我正在使用用 C#、MVC 编写的 Web API,它看起来像:
public IEnumerable<Day> Post([FromBody] string postObject)
使用 fiddler 或 poster 我可以发布到该 REST 服务,因为我的 body 在发送 JSON 之前有一个 =,比如
={"BillTypeId":"4","RestId":"1"}
使用 retrofit 进行此调用我无法发送那个初始 = 并且我的请求看起来像
{"BillTypeId":"4","RestId":"1"}
这使得其余服务始终接收空参数。 你知道在我的 json 之前发送它的方法吗?因为我这样称呼休息
void postToGetDayList(@Body ResquestListenerBillType request, Callback<List<Day>> callback);
谢谢!!!
最佳答案
如果你还没有解决你的问题,我想你可以引用我下面的代码:
网络接口(interface):
public class ValuesController : ApiController
{
// GET api/values
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
// POST api/values
public string Post([FromBody]string value)
{
return value;
}
}
改造 WebAPI 服务:
public interface WebAPIService {
@GET("/api/values")
List<String> listValues();
@POST("/api/values")
String postValues(@Body String value);
}
调用webAPIService.postValues("BNK");
关于c# - android 改造使用 asp.net web api [FromBody] 始终为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30521911/