支付宝更换绑定手机号手机号跟换国外的手机号怎么参数错误

支付宝帐号是手机号,但是由于升学原因,我要换手机号,我不会再用原来的号,支付宝帐号应怎么处理。?还_百度知道
支付宝帐号是手机号,但是由于升学原因,我要换手机号,我不会再用原来的号,支付宝帐号应怎么处理。?还
我要换手机号?还包括用这个手机号注册的淘宝帐号,我不会再用原来的号、百度帐号支付宝帐号是手机号,支付宝帐号应怎么处理、京东帐号。,但是由于升学原因
提问者采纳
换手机号码对支付宝影响是不大的,只要登录上去换个手机号绑定就行,但是像淘宝帐号里的银行预留手机号码要去银行修改的,比较麻烦
提问者评价
太给力了,你的回答完美地解决了我的问题,非常感谢!
来自团队:
其他类似问题
为您推荐:
其他4条回答
把所有的号码换成新的,老的手机号会收到验证码,验证后就可以改了。
其实不一定要换手机号,可以双用,或者什级为全球通都可以
都可以申请换号码
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁支付宝手机网页及时到账接口(2)之授权接口请求 - 综合当前位置:& &&&支付宝手机网页及时到账接口(2)之授权接口请求支付宝手机网页及时到账接口(2)之授权接口请求&&网友分享于:&&浏览:0次支付宝手机网页即时到账接口(2)之授权接口请求
& & & &这篇文章主要讲诉系统调用支付宝手机网页即时到账授权接口获取支付宝返回的request_token。
& & & &上篇文章地址:支付宝手机网页即时到账接口(1)之相关信息介绍。
& & & &这是上篇文章结尾调用授权接口的图解。
& & & &官方文档中对授权接口的说明是:
商户利用编程方法来模拟http请求远程解析html,获取支付宝返回的结果数据后,可以结合自身网站的业务逻辑进行数据处理。
& & & 说明中不难看出我们的代码中需要模拟http提交参数,然后解析支付宝返回的结果再进行处理。该项目是用java编写的,所以后续代码也是用java展现。该项目中模拟http需要两个jar包,httpclient.jar和httpcore.jar,我已经上传,点击下载即可。
授权接口请求参数说明
请求参数是商户在与支付宝进行数据交互时,提供给支付宝的请求数据,以便支付宝根据这些数据进一步处理。
2.授权请求参数列表
& & & 从上面的图片可以看到参数比较多,这边简单介绍下(注:下面没有写出字符长度)。
service=alipay.wap.trade.create.direct
授权接口名称(固定)
format=xml
请求参数格式(固定)
接口版本号(固定)。注当前版本,以后说不定会更新
partner=0000
合作者身份ID(开通支付宝商家服务后,支付宝会提供)
请求号(必须唯一,可以用当前时间)
sec_id=MD5
签名方式(MD5、0001(RSA))。本篇是用MD5
sign=VRVr7adPfsHblFjiBkGWryhKI
对请求或响应中参数签名后的值。
&direct_trade_create_req&
&subject&彩票&/subject&
&out_trade_no&1&/out_trade_no&
&total_fee&10.01&/total_fee&
&seller_account_name&
&/seller_account_name&
&call_back_url&
/waptest0504/servlet/CallBack
&/call_back_url&
&notify_url&
/waptest0504/servlet/NotifyReceiver
&/notify_url&
&out_user&&/out_user&
&merchant_url&
&/merchant_url&
&pay_expire&3600&/pay_expire&
&agent_id&&/agent_id&
&/direct_trade_create_req&
请求业务参数
subject=彩票
商品名称(不可空)
out_trade_no=1
商户网站唯一订单号(不可空)
total_fee=0.01
交易金额(不可空)
seller_account_name=
卖家支付宝账号(不可空)
call_back_url=/waptest0504/servlet/CallBack
支付成功跳转页面路径(不可空)
notify_url=/waptest0504/servlet/NotifyReceiver
服务器异步通知页面路径(可空,但是不建议为空)
商户系统用户唯一标识(可空)
merchant_url=
操作中断返回地址(可空)
pay_expire=3600
交易自动关闭时间(可空,默认&#(即15天))。
代理人ID(可空,我不知道这是什么鬼)
/service/rest.htm?req_data=&direct_trade_create_req&&subject&彩票&/subject&&out_trade_no&1&/out_trade_no&&total_fee&10.01&/total_fee&&seller_account_name&&/seller_account_name&&call_back_url&/waptest0504/servlet/CallBack&/call_back_url&&notify_url&/waptest0504/servlet/NotifyReceiver&/notify_url&&out_user&&/out_user&&merchant_url&&/merchant_url&&pay_expire&3600&/pay_expire&&agent_id&&/agent_id&&/direct_trade_create_req&&service=alipay.wap.trade.create.direct&sec_id=0001&partner=7799&req_id=6&sign=VRVr7adPfsHblFjiBkGWryhKIKt+CaI4Cq2MA2wG1ENVuBAyFDlp3FbttndmID0USlfn22a9/6fQ+X+KPDE09hcTNz3gJ1edUiDWxHXY/ahTexCP79SDtoHx29uepXsHBe32DP0k9jZbfhpT8Ly0+ksuo5VJO0iymxQ87hQPjJw=&format=xml&v=2.0
public class AlipayAuth {
// 支付宝网关
private final static String alipayGatewayNew = &/service/rest.htm?&;
private final static String inputCharset = &utf-8&;
private String key = &&;//从支付宝获取的密钥
//接口名称
private final static String service = &alipay.wap.trade.create.direct&;
//请求参数格式
private final static String format = &xml&;
//接口版本号
private final static String v = &2.0&;
//合作者身份id
public String partner = &0000&;//填写从支付宝得到的id
private String reqId;
//签名方式
private final static String secId = &MD5&;
//请求业务参数
private String reqD
//商品名称
//商务网站唯一订单号
private String outTradeNo;
//交易金额
private String totalF
//卖家支付宝账号
private String sellerAccountN
//支付成功跳转路径
private String callBackUrl = &callBack&;
//服务器异步通知页面路径 (可空)
private String notifyUrl = &notify&;
//商户系统唯一标示(可空)
private String outU
//操作中断返回地址(可空)
private String merchantU
//交易自动关闭时间(可空)
private String payE
//代理人id(可空)
private String agentId;
public String getBasePath() {
return baseP
public void setBasePath(String basePath) {
this.basePath = baseP
public String getAlipayGatewayNew() {
return alipayGatewayN
public String getKey() {
public void setKey(String key) {
this.key =
public String getInputCharset() {
return inputC
public String getService() {
public String getFormat() {
public String getV() {
public String getPartner() {
public void setPartner(String partner) {
this.partner =
public String getReqId() {
return reqId;
public void setReqId(String reqId) {
this.reqId = reqId;
public String getSecId() {
return secId;
public String getSign() {
public void setSign(String sign) {
this.sign =
public String getSubject() {
public void setSubject(String subject) {
this.subject =
public String getOutTradeNo() {
return outTradeNo;
public void setOutTradeNo(String outTradeNo) {
this.outTradeNo = outTradeNo;
public String getTotalFee() {
return totalF
public void setTotalFee(String totalFee) {
this.totalFee = totalF
public String getSellerAccountName() {
return sellerAccountN
public void setSellerAccountName(String sellerAccountName) {
this.sellerAccountName = sellerAccountN
public String getCallBackUrl() {
return callBackU
public void setCallBackUrl(String callBackUrl) {
this.callBackUrl = callBackU
public String getNotifyUrl() {
return notifyU
public void setNotifyUrl(String notifyUrl) {
this.notifyUrl = notifyU
public String getOutUser() {
return outU
public void setOutUser(String outUser) {
this.outUser = outU
public String getMerchantUrl() {
return merchantU
public void setMerchantUrl(String merchantUrl) {
this.merchantUrl = merchantU
public String getPayExpire() {
return payE
public void setPayExpire(String payExpire) {
this.payExpire = payE
public String getAgentId() {
return agentId;
public void setAgentId(String agentId) {
this.agentId = agentId;
public void setReqData(String reqData) {
this.reqData = reqD
public String getReqData() {
reqData = &&direct_trade_create_req&&
+ &&subject&& + subject + &&/subject&&//商品名称
+ &&out_trade_no&& + outTradeNo + &&/out_trade_no&&//商户网站唯一订单号
+ &&total_fee&& + totalFee + &&/total_fee&&//交易金额
+ &&seller_account_name&& + sellerAccountName + &&/seller_account_name&&//卖家支付宝账号
+ &&call_back_url&& + callBackUrl + &&/call_back_url&&//支付成功跳转页面
+ &&notify_url&& + notifyUrl + &&/notify_url&&//异步通知页面
//+ &&merchantUrl&& + merchantUrl + &&/merchantUrl&&//操作终端返回地址(可空)
+ &&/direct_trade_create_req&&;
return reqD
获取request_token代码
public String pay() throws Exception {
AlipayAuth alipayAuth = new AlipayAuth();
alipayAuth.setReqId(&请求号:可以用系统当前时间(精确到毫秒),作为一个唯一的请求号&);
alipayAuth.setSubject(&商品名称&);
alipayAuth.setOutTradeNo(&商户网站唯一订单号&);
alipayAuth.setTotalFee(&交易金额&);
Map&String, String& param = getAuthParam(alipayAuth);
// 拼接后字符串
String prestr = PayUtils.createLinkString(param);
// sign签名
alipayAuth.setSign(getSign(prestr, alipayAuth.getKey(), alipayAuth.getInputCharset()));
// 通过授权接口获取token
// 1.拼接url字符串
StringBuffer urlStr = new StringBuffer();
urlStr.append(alipayAuth.getAlipayGatewayNew()).append(prestr).append(&&sign=& + alipayAuth.getSign());
// 2.获取token
return getToken(urlStr.toString(), alipayAuth.getInputCharset());
}获取request_token代码中使用到的
代码块getAuthParam
组成需要生成sign的map集合
private static Map&String, String& getAuthParam(AlipayAuth alipayAuth) {
Map&String, String& param = new HashMap&String, String&();
param.put(&service&, alipayAuth.getService());
param.put(&partner&, alipayAuth.getPartner());
param.put(&_input_charset&, alipayAuth.getInputCharset());
param.put(&sec_id&, alipayAuth.getSecId());
param.put(&format&, alipayAuth.getFormat());
param.put(&v&, alipayAuth.getV());
param.put(&req_id&, alipayAuth.getReqId());
param.put(&req_data&, alipayAuth.getReqData());
return PayUtils.paraFilter(param);
工具类PayUtils.paraFilter(param);
去掉空值与签名参数后的新签名参数组
public static Map&String, String& paraFilter(Map&String, String& sArray) {
Map&String, String& result = new HashMap&String, String&();
if (sArray == null || sArray.size() &= 0) {
for (String key : sArray.keySet()) {
String value = sArray.get(key);
if (value == null || value.equals(&&) || key.equalsIgnoreCase(&sign&)
|| key.equalsIgnoreCase(&sign_type&)) {
result.put(key, value);
工具类PayUtils.createLinkString(param)
&把数组所有元素排序,并按照“参数=参数值”的模式用“&”字符拼接成字符串
public static String createLinkString(Map&String, String& params) {
List&String& keys = new ArrayList&String&(params.keySet());
Collections.sort(keys);
String prestr = &&;
for (int i = 0; i & keys.size(); i++) {
String key = keys.get(i);
String value = params.get(key);
if (i == keys.size() - 1) {//拼接时,不包括最后一个&字符
prestr = prestr + key + &=& +
prestr = prestr + key + &=& + value + &&&;
代码块getSign(prestr, alipayAuth.getKey(), alipayAuth.getInputCharset())
签名字符串
private static String getSign(String text, String key, String input_charset) {
text = text +
return DigestUtils.md5Hex(getContentBytes(text, input_charset));
代码块getToken(urlStr.toString(), alipayAuth.getInputCharset())
private static String getToken(String urlStr, String charset) throws Exception {
HttpClient httpClient = new DefaultHttpClient();// client
HttpResponse remoteResponse =// response
int responseState = 0;// 返回状态码
BufferedReader bufferedReader =
StringBuilder entityStringBuilder = new StringBuilder();
// url存在非法字符-&需转换成uri
URL url = new URL(urlStr.toString());
URI uri = new URI(url.getProtocol(), url.getHost(), url.getPath(), url.getQuery(), null);
HttpGet httpost = new HttpGet(uri);// GET
remoteResponse = httpClient.execute(httpost);
if (remoteResponse != null) {
responseState = remoteResponse.getStatusLine().getStatusCode();
if (HttpStatus.SC_OK == responseState) {
// 请求成功
HttpEntity httpEntity = remoteResponse.getEntity();
if (httpEntity != null) {
bufferedReader = new BufferedReader(new InputStreamReader(httpEntity.getContent(), &utf-8&));
String line =
while ((line = bufferedReader.readLine()) != null) {
entityStringBuilder.append(line);
// 请求失败
throw new Exception(&页面访问错误,状态码:& + remoteResponse);
// 从授权页面返回的数据中获取到token
String entityString = URLDecoder.decode(entityStringBuilder.toString(), charset);
String token = getRequestToken(entityString);
代码块getRequestToken(entityString)
解析远程模拟提交后返回的信息,获得token(如果返回错误页面则返回空)
private static String getRequestToken(String text) throws Exception {
String request_token = &&;
// 以“&”字符切割字符串
String[] strSplitText = text.split(&&&);
// 把切割后的字符串数组变成变量与数值组合的字典数组
Map&String, String& paraText = new HashMap&String, String&();
for (int i = 0; i & strSplitText. i++) {
// 获得第一个=字符的位置
int nPos = strSplitText[i].indexOf(&=&);
// 获得字符串长度
int nLen = strSplitText[i].length();
// 获得变量名
String strKey = strSplitText[i].substring(0, nPos);
// 获得数值
String strValue = strSplitText[i].substring(nPos + 1, nLen);
// 放入MAP类中
paraText.put(strKey, strValue);
if (paraText.get(&res_data&) != null) {
String res_data = paraText.get(&res_data&);
// token从res_data中解析出来(也就是说res_data中已经包含token的内容)
Document document = DocumentHelper.parseText(res_data);
request_token = document.selectSingleNode(&//direct_trade_create_res/request_token&).getText();
return request_
上面代码图解
本篇到此结束,敬请期待下篇-------支付宝手机网页即时到账接口(3)之交易接口请求
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 12345678910 Copyright & &&版权所有您的举报已经提交成功,我们将尽快处理,谢谢!
如果您的手机号码忘记或丢失,需要更换,请联系@微博客服 人工帮助您更换登录名。
用手机号开通微博时会默认开通一个新浪的cn邮箱,一旦修改了登录名,那么您的原手机...
大家还关注当前访客身份:游客 [
当前位置:
转换编码后商品名成16进制的了。
//支付类型
$payment_type = "1";
//必填,不能修改
//服务器异步通知页面路径
$notify_url = "http://商户网关地址/create_direct_pay_by_user-PHP-GBK/notify_url.php";
$notify_url=iconv("utf-8","gbk//IGNORE",$notify_url);
//需http://格式的完整路径,不能加?id=123这类自定义参数
//页面跳转同步通知页面路径
$return_url = "http://商户网关地址/create_direct_pay_by_user-PHP-GBK/return_url.php";
//需http://格式的完整路径,不能加?id=123这类自定义参数,不能写成http://localhost/
//卖家支付宝帐户
$return_url=iconv("utf-8","gbk//IGNORE",$return_url);
$seller_email = $_POST['WIDseller_email'];
//商户订单号
$out_trade_no = $_POST['WIDout_trade_no'];
//商户网站订单系统中唯一订单号,必填
//订单名称
$subject=$_POST['WIDsubject'];
$subject=urlencode($subject);
//付款金额
$total_fee = $_POST['WIDtotal_fee'];
//订单描述
$body = $_POST['WIDbody'];
//商品展示地址
$show_url = $_POST['WIDshow_url'];
//需以http://开头的完整路径,例如:http://www.商户网址.com/myorder.html
//防钓鱼时间戳
$anti_phishing_key = "";
//若要使用请调用类文件submit中的query_timestamp函数
//客户端的IP地址
$exter_invoke_ip = "";
//非局域网的外网IP地址,如:221.0.0.1
这是支付宝接口。
&dt&收货地址:&/dt&
&span class="null-star"&*&/span&
&input size="30" name="WIDsubject" value="{$_POST['zhans']}" /&
&span&为保证您收到货物请在此处填写您的收货地址
&dt&付款金额:&/dt&
&span class="null-star"&*&/span&
&input size="30" name="WIDtotal_fee" value="{$_GET['sid']}"
readonly="readonly"/&
&span&必填
&dt&手机号:&/dt&
&span class="null-star"&*&/span&
&input size="30" name="WIDbody"
value="" /&
&dt&商品展示地址:&/dt&
&span class="null-star"&*&/span&
$surl='/portal.php?mod=product&itemid='.intval($_POST['itemid']);
&input size="30" name="WIDshow_url" value="{$surl}" readonly="readonly" /&
&span&需以http://开头的完整路径,例如:/myorder.html
这是添加支付信息页面。
共有1个答案
<span class="a_vote_num" id="a_vote_num_
没人回答吗?
更多开发者职位上
有什么技术问题吗?
类似的话题所有回答(1)
卖家的支付宝账号要和申请服务的账号一致。修改如下参数。 填写pid和key &就可以成功。
1 $alipay_config['sign_type']
&&&您需要以后才能回答,未注册用户请先。

我要回帖

更多关于 支付宝换手机号 的文章

 

随机推荐