我正在尝试为 Gengo API 编写一个 Java 客户端(使用 Apache HttpClient
)它使用 HTTP GET、POST、PUT 和 DELETE。但是,对于它们公开的每个 RESTful API“方法”,您必须将您的 API key 和签名作为“参数”传递。
这是否意味着查询字符串参数、POST 变量、键值对 header 或其他内容?
我想我只是对所有这些不同 HTTP 请求方法上下文中“参数”一词的含义感到困惑。换句话说,当我可以使用 GET、POST、PUT 或 DELETE 时,我如何将 API key 作为“参数”传递给他们的 API?我的理解是只有 HTTP GET 可以处理查询字符串参数,而 HTTP POST 只能处理 POST 变量。我以前从未使用过 PUT 或 DELETE,所以我不确定它们需要什么。
所以我问:我可以使用什么机制来通过所有 4 种类型的请求方法发送 API key /签名,或者它们是否都支持查询字符串参数的处理?提前致谢。
最佳答案
你可以试试这个。它适用于我的带有 POST 请求的 HttpClient 应用程序。
DefaultHttpClient httpClient = new DefaultHttpClient();
httpClient.getParams().setParameter(name, value);
......
例如,我设置连接超时:
httpClient.getParams().setIntParameter(HttpConnectionParams.CONNECTION_TIMEOUT, httpTimeout);
然后,发送(执行)请求:
HttpResponse response = httpClient.execute([My HttpPost instance was here, but I think you can use HttpGet, HttpPut, and HttpDelete here as well]);
关于java - 如何向所有HTTP请求方法发送 "parameters"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14057089/