繁体   English   中英

Asp.net客户端-服务器POST和响应(不允许使用405方法)

[英]Asp.net Client - Server POST and Response (405 Method Not Allowed)

我的服务器为什么不向客户端返回相同的值?


在服务器上,我的ApiController如下所示:

public void Post(byte[] value)
    {
        Request.CreateResponse<byte[]>(HttpStatusCode.OK, value);
    }

-它不应该将数据从POST返回给客户端吗?
在客户端,我得到了:

using (var client = new WebClient())
{
    byte[] value = { 16, 32 };

    client.UploadDataCompleted += delegate
    {
        Debug.WriteLine(Encoding.Default.GetString(response));
    };

    response = client.UploadData("http://localhost:52117/", value);
}

错误信息:

远程服务器返回错误:(405)不允许使用方法。

我刚开始使用ASP.net。 我正在尝试使其工作几个小时。
我试图按照教程讲解产品和内容,但是它甚至不相似。

编辑:我什至尝试了这个东西这里它说:

该操作的返回值将转换为HttpResponseMessage。

如果返回类型为HttpResponseMessage,则通过(作为对客户端的响应)

public HttpResponseMessage Post(byte[] value)
{
    var msg = new HttpResponseMessage();
    msg.Content = new ByteArrayContent(value);
    return msg;
}

什么都没有

你可能会错过一些东西

请参阅此链接以获取更多想法, https://trentgardner.net/net/asp-net-webmethods-with-jquery-and-ajax/

尝试

 [System.Web.Services.WebMethod]
public void Post(byte[] value)
    {
        Request.CreateResponse<byte[]>(HttpStatusCode.OK, value);
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM