jsonpリクエストのサーバー側とクライアント側の両方を作成しようとしていますが、動作させられないようです。私は数多くのガイドやブログの投稿などを見てきましたが、かなり多くの人がクライアント側だけを表示しています。JSONP - Access-Control-Allow-OriginとMIMEタイプのエラー
ここに私のクライアントコード
$.ajax({
dataType: 'application/json',
data: params,
jsonp: 'jsonpCallback',
url: settings.domain + '/httpext.dll?json_cc',
success: function (data) {
//determine the return status
},
error: function (response, status, error) {
//error handling
}
}); //end ajax
だ今、サーバはこの
jsonpCallback({"username":"meltingice","posts"1234});
のようなハードコーディングされた値を返している私の問題は、私が一緒に仕事する要求と応答を得ることができないということです。現在のところ、応答はapplication/jsonを返していますので、私がリクエストを変更した場合は、エラーがjsonpにあります。
リソースはスクリプトとして解釈されますが、MIMEタイプapplication/jsonで転送されます。 未知のReferenceError:jsonpCallbackが定義されていません
まず、jsonpCallbackが定義されています。
私はアプリケーション/ JSONにデータ型を変更した場合さて、その後、私はこのエラーを取得する
XMLHttpRequest cannot load http://myserver/httpext.dll?json_cc&sid=adsfhasjdkfhajksdghjk%3Basdhg&action=SALE&ccCard=&ccNum=&ccExMM=0&ccExYYYY=0&ccCVV2=&holdersName=&totalDue=0&dueDate=11%2F19%2F2010. Origin http://localhost:59905 is not allowed by Access-Control-Allow-Origin.
あなたが見ることができるように、それはURLへcallback=?
を入れていません。むしろイライラします。
jsonpを使用してサーバー側を設定するにはどうすればよいですか。応答タイプには何が必要ですか?私のクライアント側のコードがデータを引き戻すために返されるデータをどのようにフォーマットするのですか?
デフォルトのコールバック名を取得するようにコードを変更しましたが、まだ他のエラーが発生しています。スクリプトとして解釈されるが、MIMEタイプapplication/jsonで転送されるリソース。 – Josh