jQuery を介してリモート サービスで認証しようとしています。最初に、これをブラウザーの外で実行できることを確認します。
curl -X POST -H "Content-Type: application/json" -H "Accept: appliction/json" -d '{"username":"...","password":"..."}' http://example.com/auth
これにより、トークンが正常に返されます。
今私はjQueryでそれを試します:
$.ajax({
url: "http://example.com/auth",
type: "POST",
dataType: "json",
contentType: "json",
data: {username:"...",password:"..."},
error: function(data){alert(JSON.stringify(data))},
success: function(data){alert(JSON.stringify(data))}
});
サーバー エラー (500) が発生します。明らかに私は何か間違ったことをしています。jQuery で POST を実行するのはこれが初めてなので、問題を特定する方法がわかりません。ここで何が間違っていますか?
PS 既にトークンを持っている場合、jQuery を介して GET 要求を正常に実行できます。
$.ajax({
url: "http://example.com/stuff?token=f42652adcbfe3ed9d59fae62b5267b8d",
type: "GET",
dataType: "json",
error: function(data){alert(JSON.stringify(data))},
success: function(data){alert(JSON.stringify(data))}
});