var image = document.getElementById("capture").toDataURL("image/png");
image = image.replace('data:image/png;base64,', '');
alert(image);
$.ajax({
type: 'POST',
url: 'Info.aspx/testingPOST',
data: '{ "imageData" : "' image '" }',
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function(response, textStatus, jqXHR) {
alert("File Saved");
},
error: function (jqXHR, exception) {
var msg = 'error';
if (jqXHR.status === 0) {
msg = 'Not connect.\n Verify Network.';
} else if (jqXHR.status == 404) {
msg = 'Requested page not found. [404]';
} else if (jqXHR.status == 500) {
msg = 'Internal Server Error [500].';
} else if (exception === 'parsererror') {
msg = 'Requested JSON parse failed.';
} else if (exception === 'timeout') {
msg = 'Time out error.';
} else if (exception === 'abort') {
msg = 'Ajax request aborted.';
} else {
msg = 'Uncaught Error.\n' jqXHR.responseText;
}
alert("error:" msg);
}
})
}
使用上面的方法將我的畫布影像發布到 Webmethod,然后在下面的 c# 中進行簡單的檢查。我收到錯誤 500。我查看了各種帖子,似乎找不到任何可以使此作業正常的調整,我已關閉 app_start 中的自動重定向和其他各種建議。但還是什么都沒有。
[WebMethod]
public static bool testingPOST(string value)
{
return true;
}
uj5u.com熱心網友回復:
WebMethod告訴應用程式它是通過 XML WebService 請求訪問的。如果您想通過它訪問它,POST您將需要以下ScriptMethod屬性:
[ScriptMethod]
public static bool testingPOST(string value)
{
return true;
}
有關更多資訊,請參閱此答案:
Web服務中的Web方法屬性是什么?
uj5u.com熱心網友回復:
我在谷歌瀏覽器中使用了開發者工具,點擊了錯誤,然后在預覽..它告訴我json字串長度太長。
我使用以下內容編輯了 webconfig,現在可以使用了!
<system.web.extensions>
<scripting>
<webServices>
<jsonSerialization maxJsonLength="500000000"/>
</webServices>
</scripting>
</system.web.extensions>
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/371473.html
標籤:C# json 阿贾克斯 网络方法 http-status-code-500
