私は基本的なASP.NET & AJAX/JSONの割り当てに取り組んでいます。私はそれを動作させることに不満を持っています。要件の1つは、SQL DBデータの操作を行うAJAX/JSONメソッドを作成することでした。 ASPXで200 OKステータスにもかかわらずAJAX JSONレスポンスが失敗するのはなぜですか?
:
はそれを完了するために、私は次のコードを使用した「retrieve.aspx」ページ(JSON用のデータを作成するコードの一部に
$.ajax({
type: "GET",
dataType: "json",
url: "Retrieve",
success: function (data) {
alert(data);
var col;
for (col in data) {
alert(col);
addRow(data[col].id, data[col].Name, data[col].catagory, data[col].difficulty, data[col].company, data[col].price, '#products');
}
},
error: function() {
alert("1");
}
):私は、テキストにデータ型を変更しようとした場合
Response.ContentType = "application/json; charset=utf-8";
bool val1 = (System.Web.HttpContext.Current.User != null) && System.Web.HttpContext.Current.User.Identity.IsAuthenticated;
string category = Request.QueryString["category"];
//string a = JsonConvert.SerializeObject(getProducts(category));
var a = getProducts(category);
// instantiate a serializer
JavaScriptSerializer TheSerializer = new JavaScriptSerializer();
var TheJson = TheSerializer.Serialize(a);
Response.Write(TheJson);
そして最後にではなく、少なくとも、それはコンテンツが一緒にHTMLページのコードでJSON構造化テキストであることを示します。
私はここで何が欠けていますか?
「Response.End」は通常、他の方法で修正できる問題に対する悪い回避策です。ハードには、スレッドの中断を内部的に行うことによって要求が終了します。 [ドキュメント](https://msdn.microsoft.com/en-us/library/system.web.httpresponse.end(v = vs.110).aspx)にも:_ "このメソッドは互換性のためにのみ提供されていますASPで "_ –
@JamesThorpe、本当に、指摘してくれてありがとう。少し研究し、より多くのことを学んだ、より良い選択肢で更新された答え – Andrei
それが私が大好きな理由です - 誰もが学ぶことができます:) –