当前位置: 首页 > 知识库问答 >
问题:

在HTTP请求中作为参数显示的reverfit@body

姜煌
2023-03-14

我以前曾成功地将Square的改版用于@getweb API调用,但当试图在@post调用中以@body的形式发送JSON时,在服务器(Rails)上,JSON显示为参数,而不是body请求。

WebAPI:

@POST("/api/v1/gear/scans.json")
Response postScans(
    @Header(HEADER_AUTH) String token,
    @Body JsonObject scans
);

发出web请求:

RestAdapter restAdapter = new RestAdapter.Builder()
    .setServer(api_url)
    .build();
WebApi webApi = restAdapter.create(AssetsWebApi.class);     
Response response = webApi.postScans(auth_token, valid_json);

共有1个答案

笪智志
2023-03-14

事实证明,如果希望将数据作为请求主体的一部分发布,则需要将API接口方法注释为@Formurlencoded,并将主体内容作为@field传递,如下所示:

@FormUrlEncoded
@POST("/api/v1/gear/scans.json")
Response postScans(
    @Header(HEADER_AUTH) String token,
    @Field("scans") JsonArray scans
);

@rickster的异步调用:

@POST("/api/v1/gear/scans.json") 
void postScans(
    @Header(HEADER_AUTH) String token,
    @Body JsonObject scans,
    Callback<PostSuccessResponseWrapper> callback
);
 类似资料:
  • 我试图做一个POST请求,但我不能让它工作: 我基本上想复制这个超文本传输协议请求(不是ajax),就像它是由html表单发起的一样: URL:/api 参数:用户名和密码

  • 本文向大家介绍PHP中Http协议post请求参数,包括了PHP中Http协议post请求参数的使用技巧和注意事项,需要的朋友参考一下 本文给大家介绍PHP中Http协议post请求参数,具体内容如下所示: WEB开发中信息基本全是在POST与GET请求与响应中进行,GET因其基于URL的直观,易被我们了解,可POST请求因其信息的隐蔽,在安全的同时,也给开发者们模拟发送带来了麻烦。接下来的几篇博

  • 我正在使用Apache Camel将数据从CSV文件加载到webservice。我是否可以显示请求和响应。以下是路线配置。。 我从数组中拆分并聚合100个项目,以作为邮件正文发送。 请让我知道如何使用上述路线显示请求和响应?

  • 我是Spring启动的新手,并试图使用枚举作为Rest请求的参数。 这是我的枚举类: 在我的控制器类中,我使用了以下方法: 这是我的JSON: 但它不起作用。。我收到以下错误:

  • 问题内容: 我正在使用AngularJS 的服务来发出Ajax请求。 在执行Ajax请求时如何显示微调器GIF(或其他类型的忙碌指示器)? 我在AngularJS文档中看不到任何类似的内容。 问题答案: 这是 当前 过去的AngularJS咒语: 这是其余的(HTML / CSS)....使用 切换它。 注意:以上内容在发布开始时用于角度模块

  • 我们公司有一个基于.NET的网站 几天前,我们向网站程序员请求一个webservice。昨天他给了我一个URL 当我从localhost打开URL时,它显示了一个页面,我可以从我们请求编程的四个方法(函数)中选择一个。 通过选择其中一个,一个新的页面显示如下: SOAP 1.1 以下是SOAP 1.1请求和响应示例。显示的占位符需要用实际值替换。 POST/webservices/findstat