次のコードを使用して、高速 POST エンドポイントを呼び出す反応/redux アプリから ajax リクエストを送信しています。
このエンドポイントを Postman でテストしたところ、正しく動作したので、問題がサーバー側にあるのではないと確信しています。したがって、これは私がクライアントで使用しているコードであり、{message: "Missing credentials"}
パスポート認証から返されます...再び、サーバーでは問題ありません...ボディパーサーを正しく使用し、ログアウトし、 Postmanを使用req.body.email
しreq.body.password
て正しく印刷されますしかし、次のコードで isomorphic-fetch を使用してこの呼び出しを開始するとreq.body
、サーバーに次のように出力されます...
{ '------WebKitFormBoundaryKtn3SHumfq4YBeZ1\r\nContent-Disposition: form-data; name': '"email"\r\n\r\ntest@domain.com\r\n------WebKitFormBoundaryKtn3SHumfq4YBeZ1\r\nContent-Disposition: form-data; name="password"\r\n\r\ntestPassword\r\n------WebKitFormBoundaryKtn3SHumfq4YBeZ1--\r\n' }
import fetch from 'isomorphic-fetch'
import FormData from 'form-data'
export function signup(payload) {
return (dispatch) => {
let formData = new FormData()
formData.append('email',payload.email)
formData.append('password',payload.password)
fetch(`${baseURL}/signup`, {
method: 'post',
body: formData,
headers: new Headers({
'content-type': 'application/x-www-form-urlencoded; charset=utf-8',
'Accept': 'application/json, application/xml, text/plain, text/html, *.*'
}),
})
.then((res) => res.json())
.then((res) => {
console.log('Fetch signup result:',res)
console.log('dispatch:',dispatch)
dispatch({
type : Auth_Actions.SignUp_Success,
userObject : res
})
})
.catch((err)=>{
console.error('Fetch signup ERROR:',err)
dispatch({
type : Auth_Actions.SignUp_Fail,
userObject : err
})
});
}
}