我有一些RxJS代碼,這是它的一部分:RxJS v5:如何使用params創建POST請求?
.mergeMap(action => {
const user = store.getState().user;
return ajax.post(`${config.API_BASE_URL}/api/v1/rsvps`, {
rsvp: {
meetup_id: action.payload,
user_id: user.id,
}
})
.map(action => calendarActions.rsvpAdded(action.payload));
})
然而,我的服務器是告訴我,PARAMS是不正確的格式:
[info] POST /api/v1/rsvps
[debug] Processing by ParrotApi.RsvpController.create/2
Parameters: %{"rsvp" => "[object Object]"}
Pipelines: [:api_auth]
[info] Sent 400 in 10ms
我試着使用JSON。 stringify,但沒有奏效。它只是使我的參數成爲一個字符串。
rsvp: JSON.stringify({
meetup_id: action.payload,
user_id: 123,
})
Parameters: %{"rsvp" => "{\"meetup_id\":1,\"user_id\":123}"}
這個問題可能與'ajax.post()'做/不是RxJS有關。 – martin
它是從rxjs observable中導入的:'從'rxjs/observable/dom/ajax'導入{ajax};' – Edmund