我之前發佈了一個類似的帖子,得到了一些很好的答案,但是我不小心刪除了我的帖子,所以我發佈了一些修改後的版本以及更多的數據。將變量發佈到Web API時發生內部服務器錯誤
我正在構建一個Web API來發布並從我的視圖中獲取數據。與API溝通效果很好,但我遇到了一個問題。
每當我發送數據與我的發佈請求,我得到一個500:內部服務器錯誤。如果我從請求中刪除數據,它可以正常工作。
[HttpPost]
public string Test()
{
return "this works";
}
,因爲我不傳遞任何數據到我沒有運行任何問題上面的方法:
實例方法的工作原理。但是,每當我一些數據添加到我的要求,比如:
API方法:
[HttpPost]
public string TestWithVariables(string test)
{
return test;
}
AJAX調用:
$.post({
url: myUrl + "/api/my-api/TestWithVariables",
data: { test: "123456" },
success: function (html) {
console.log("y")
},
error: function() {
console.log("n");
}
});
上面的代碼輸出在瀏覽器中這些錯誤:HTTP/1.1 500內部服務器錯誤和XML解析錯誤:未找到根元素。事情是,如果我在API方法的第一行設置了一個斷點,它永遠不會被命中,這意味着該方法沒有找到,或者由於某種原因執行......?
我嘗試過的一些東西:將我的參數分解爲TestClass並使用[FromBody]
。我也嘗試使用[FromUri]
,這實際上使該方法執行,但我不能從那裏訪問值,因爲我的值張貼在正文中。
任何想法可能會導致這些問題?
是你的路線正確定義? – PmanAce
路由都很好 - 如果我將這些方法從它們被執行的參數上剝離下來。 – maskinen999
使用以下數據:JSON.Stringify({test:「123456」}); –