java RestTemplate调用远程服务接口

本文详细介绍了如何在Java中利用RestTemplate库调用远程服务接口。通过示例代码展示了Test.java, HttpClientUtil.java和RestClient.java的实现,并提供了一个参考链接以深入理解该过程。" 133514271,19673925,Windows 7创建热点:详细步骤与编程示例,"['windows', '编程', '网络共享', '命令行']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.1.	接口域名说明
为了说明的方便我这里都假定接口域名是xxx.xxx.xxx。实际使用中如果是其他域名只需将相应域名替代xxx.xxx.xxx即可
1.2.	format 参数说明 
指定接口返回格式。主要包含三种格式:xml、json、php。如果未显式调用format参数,默认返回json格式。具体返回格式可查看具体接口的返回示例(为方便理解用的是GET方式,正式使用中请使用POST)
获取xml格式	http://xxx.xxx.xxx/Api/seller/api.php?format=xml&cid=1&pid=10000
获取json格式
http://xxx.xxx.xxx/Api/seller/api.php?format=json&cid=1&pid=10000
1.3.	接口访问权限
合作伙伴如果要访问接口至少要提供_pid和签名(签名是由授权码和参数生成)
1.3.1.	pid 参数说明 
每个接口都需要_pid参数,这是合作伙伴的编号,在此文档中有时叫合作伙伴id. 
1.3.2.	签名参数
还需要签名来验证请求的合法性。签名生成规则:
md5( $authcode . '&p1=v1&p2=v2&p3=v3&' .$authcode ); 
md5: 加密算法,32位md5算法
$authcode: 授权码
p1=v1&p2=v2&p3=v3:传递给接口的参数。多个参数用&连接
注:
1.	所有参数(除_sig参数,注意是所有参数,而不是接口要求的参数)需要按照键名英文排好次序。
2.	参数要求:除_sig参数本身以外的所有其他参与请求接口的参数。
3.	其中的‘.’号表示连接符号,即连接多个字符串。请勿理解成可见的字符,如js中字符串连接符号‘+’
4.	$authcode是授权码,(与_pid一起联系官方获取)。
5.	请求方式强制为POST。

php中生成签名示例:



分析下php脚本片段,对应java语言



Test.java

package com.xxx.client;

import com.wdletu.client.util.HttpClientUtils;
import org.json.JSONException;
import org.json.JSONTokener;

import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;

/**
 * Created by zhangmy on 2017/8/22.
 */
public class Test {
    private static final String url = "http://demo.xxx.xxxx.com/Api/Seller/api.json";
    private static final String autoCode = "111";//授权码
    private static final String _pid = "4";//合作伙伴id

    public s
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值