API 动态转发

1.说明
使用动态转发:

1.需要将代理设置为forward.xdaili.cn:80
2.需要在请求的header里面添加Proxy-Authorization参数(下面有改参数的说明),来进行校验!
3.需要特别注意的是访问https 需要忽略证书验证
2.使用方法:
签名算法参数:
secret 个人密钥
orderno 订单号
timestamp 时间戳/1000(也就是10位时间戳)
认证流程:
2.1客户根据三个参数拼接出字符串 :
planText=“orderno=xxxx,secret=xxxxxxxxx,timestamp=xxxxxxxxxx”
2.2签名根据planText 拼接出的字符串 进行MD5() ,然后再转成大写 ;例如:
org.apache.commons.codec.digest.DigestUtils.md5Hex(planText).toUpperCase();
2.3客户通过head中添加Proxy-Authorization将认证信息传递给服务端;例如:
Proxy-Authorization:sign=2020629280831809D14650xxxxxxx&orderno=ZF2017230151xxxxxxx&timestamp=1487753521
2.4 服务端接受到请求,从head中取出Proxy-Authorization,解析校验,认证成功则开始执行代理服务,失败则返回错误提示
请添加图片描述

常见错误说明

msg (例如:{“code”:200,“msg”:“auth fail, no orderno”}) 错误原因以及解决方案
auth fail, no orderno 没有订单号,需要核对下订单号是否正确,以及是否跟secret是同一个账号
The number of requests exceeds the limit 提取数量超过限制,请续费
session expired,please check out your timestamp 时间戳取10位,并且核对是否与当前时间超过1天
auth fail, invalid status 订单异常被冻结
auth fail, no secret 请前往个人中心更换下secret
auth fail, sign error 请参照示例代码进行生成sign,生成sign用的参数需要跟传给我们的参数保持一致
Concurrent number exceeds limit 订单每秒并发数超过限制,建议减少并发数,可以减少这个错误的出现次数
auth fail, no auth header 分两种情况: 1.是请求头没有根据要求设置 2.是因为请求需要重定向的url但是本身用的包使用代理自动重定向请求的时候会丢失hearder,这个时候就需要用户,禁止重定向,然后根据返回的状态码301/302的时候,从响应头的Location中获取新的请求url

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值