Wcf ASP.NET Web API 2-接收帖子,但没有数据
我正在尝试将基于WCF的REST服务器转换为ASP.NET Web API2。现有的基于WCF的是:Wcf ASP.NET Web API 2-接收帖子,但没有数据,wcf,asp.net-web-api,Wcf,Asp.net Web Api,我正在尝试将基于WCF的REST服务器转换为ASP.NET Web API2。现有的基于WCF的是: public Message ProcessReportRequest(Stream inputStream) { ... } 客户端正在发送字节[](下面是Java代码),客户端在使用时无法更改: HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); urlConnection.setDoOut
public Message ProcessReportRequest(Stream inputStream) {
...
}
客户端正在发送字节[](下面是Java代码),客户端在使用时无法更改:
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setDoOutput(true);
urlConnection.setDoInput(true);
urlConnection.setChunkedStreamingMode(0);
urlConnection.setRequestProperty("Content-Type", "text/plain");
urlConnection.setRequestMethod("POST");
OutputStream out = new BufferedOutputStream(urlConnection.getOutputStream());
out.write(encryptedByteData);
out.flush();
我已按如下方式设置控制器:
public class LicenseController : ApiController
{
[Route("about")]
public JsonResult<About> GetTest()
{
return Json(new About());
}
[Route("LicenseService.svc/v1/device")]
public byte[] PostVer1Device(byte[] request)
{
Trap.trap();
return request;
}
}
公共类LicenseController:ApiController
{
[路线(“关于”)]
公共JsonResult GetTest()
{
返回Json(新的About());
}
[路由(“LicenseService.svc/v1/device”)]
公共字节[]Postver1设备(字节[]请求)
{
Trap.Trap();
返回请求;
}
}
如果我转到localhost\about,JSON会很好地返回,fiddler会显示请求并返回
当我调用Java代码发布到localhost/LicenseService.svc/v1/device时,它确实调用了该方法。但不管我将什么设置为参数(byte[],object,string,Stream),request的值都是null。而且,Fiddler什么也没显示,尽管这可能是因为它在显示正在发生的事情之前正在等待返回
无论我返回什么,从响应中读回的流都显示0字节
我如何获得发布给我的数据?我如何发回数据
谢谢-daveDavid你能比较两个fiddler请求吗?收到旧(工作)请求的小提琴手日志?特别是看看这些头头,问题是Fiddler对新的请求一无所获。我的服务器应用程序得到了它们(我在它们上面有一个断点),但Fiddler没有显示任何内容。新URL有什么特别之处,意味着Fiddler不会记录它们?您确定没有在fiddler上启用排除新URL的筛选器吗?(顺便说一句,URL是什么)