Los objetos de solicitud de Jquery tienen una propiedad con el nombre 'datos' que se utiliza para establecer datos de formulario y realizar una solicitud de formulario con los encabezados correctos.
Quería lograr lo mismo en rxjs ajax pero no pude encontrar la manera. La única lista exhaustiva de propiedades de configuración de solicitudes que pude encontrar fue esta https://github.com/Reactive-Extensions/RxJS-DOM/blob/master/doc/operators/ajax.md
La documentación para RxJS5 aún no está completa en esa parte, pero puede usarla de la siguiente manera:
import {Observable} from "rxjs/Observable"; import "rxjs/add/observable/dom/ajax"; const url = "http://my-site.org/some/endpoint"; const request$ = Observable.ajax.put(url, {a: "test"}); request$.subscribe(x => console.log(x));Y, por supuesto, todos los demás métodos REST están disponibles
Observable.ajax(urlOrRequest: string | AjaxRequest): Observable<AjaxResponse>; Observable.ajax.get(url: string, headers?: Object): Observable<AjaxResponse>; Observable.ajax.post(url: string, body?: any, headers?: Object): Observable<AjaxResponse>; Observable.ajax.put(url: string, body?: any, headers?: Object): Observable<AjaxResponse>; Observable.ajax.patch(url: string, body?: any, headers?: Object): Observable<AjaxResponse>; Observable.ajax.delete(url: string, headers?: Object): Observable<AjaxResponse>; Observable.ajax.getJSON<T>(url: string, headers?: Object): Observable<T>;Si desea enviar una solicitud ajax completamente personalizada, puede usar la siguiente interfaz:
interface AjaxRequest { url?: string; body?: any; user?: string; async?: boolean; method?: string; headers?: Object; timeout?: number; password?: string; hasContent?: boolean; crossDomain?: boolean; withCredentials?: boolean; createXHR?: () => XMLHttpRequest; progressSubscriber?: Subscriber<any>; responseType?: string; }Todo tomado de aquí: https://github.com/ReactiveX/rxjs/blob/0ab1d3b4d1178a1d31c49c737832cde767da3fb1/src/observable/dom/AjaxObservable.ts