gpt4 book ai didi

c# - 发送 ajax POST 请求接收 GET 请求

转载 作者:行者123 更新时间:2023-11-30 17:22:21 25 4
gpt4 key购买 nike

我正在使用以下 ajax 代码:

$.ajax({
url: "Editor.aspx/Page_LoadComplete",
data: { "contentCheckCode": contents },
type: "POST",
success: function (response) {
alert("Contents saved...");
},
error: function (xhr, status, errorThrown) {
alert("Error: " + errorThrown);
}
});

向我的网页后面的代码发送一个发布请求,以便将我的 tinyMCE 编辑器的内容保存到一个文件中。我的问题是后面的代码没有收到 POST 请求而是收到 GET 请求,以下 C# 代码突出显示了这个问题,而且请求没有内容:

protected void Page_LoadComplete(object sender, EventArgs e) {
string test =Request.HttpMethod;
//listens for POST request
if (Request.HttpMethod == "POST"||Request.HttpMethod=="GET")
{
String requestContents;
using (Stream inputStream = Request.InputStream)
{
using (StreamReader readStream = new StreamReader(inputStream))
{
requestContents = readStream.ReadToEnd();
}
}
}

关于如何解决这个问题有什么建议吗?我已经搜索了答案,但似乎找不到任何有类似问题的人。由于我是 jQuery 和 C# 的新手,所以我确定我做错了或错过了什么

另外,作为 Stack Exchange 的新用户,我还不能在我的帖子中包含图片,但我尝试使用 Chrome 开发人员工具的“网络”选项卡来阐明正在发生的事情,其输出可以是在这里找到:http://imgur.com/2LHuch8

编辑:将我的 ajax 代码更改为以下内容:

$.ajax({
url: "Editor.aspx/PostHandle",
data: { "content": contents },
dataType: "text",
type: "POST",
success: function (response) {
alert("Contents saved...");
},
error: function (xhr, status, errorThrown) {
alert("Error: " + errorThrown);
}
});

并在我后面的代码中添加了以下方法:

[WebMethod]
public static String PostHandle(String content) {
String test = content;
return "Hello world";
}

我在上面的方法中放置了一个断点,但它仍然没有捕捉到请求,是不是我遗漏了什么?

最佳答案

您的网络方法应具有以下语法:

[WebMethod]
public static string Page_LoadComplete(int id)
{
....
return "hello";
}

类似地,您的 ajax 调用:

$.ajax({
type: "POST",
url: "YourPage.aspx/Page_LoadComplete",
data: "{'id':'1'}",
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (data) {
//do something with data
}
});

关于c# - 发送 ajax POST 请求接收 GET 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24914886/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com