React ReduxとReactを使用してビルドされたアプリがあり、データを投稿しようとしています。 m 2つのリクエストを取得OPTIONS
&POST
おそらく、API URLがreactと同じサーバー上にないためです。
コードは次のとおりです。
const url = 'http://rest.learncode.academy/api/johnbob/myusers';
export function postUsers(username, password) {
let users = {
username,
password,
};
return{
type: "USERS_POST",
payload: axios({
method:'post',
url:url,
data: users,
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
})
}
}
AJAXはプリフライトされています。詳細についてはこちらをご覧ください。 こちら 。この振る舞いとそれがあなたのために働いているなら、あなたはそれをそのままにすることができます。
あなたがそれを取り除くことを主張する場合、あなたが取り組むことができるいくつかの方法があります:
サーバーでAccess-Control-Allow-Origin: *
を設定して、CORSを無効にすることができます。
CORSリクエストをシンプルなものにします。 Content-Type
ヘッダーをapplication/x-www-form-urlencoded
またはmultipart/form-data
またはtext/plain
に変更する必要があります。いいえapplication/json
。
OPTIONS
リクエストがあなたをブロックしていない場合は、そのままにしておきます。