有赞新零售社区

发帖
API使用问题»采用PHP SDK进行自用型开发遇到问题

采用PHP SDK进行自用型开发遇到问题

zjhgvip 2017-06-06 2205 浏览 4 评论 | 只看楼主 [打印]
ERP&API对接
店铺名称: 诸暨慧购
公众号昵称: 诸暨慧购
隐私信息(如订单流水号等信息,只有客服能看见): 隐藏内容
需要将有赞店铺和自己的系统进行对接,采用最新的PHP 1.0.0 https://open.youzan.com/open-sdk/download/php代码,用签名方式调用API。发现当调用youzan.trades.sold.get时(调用youzan.trade.get也有类似问题),如果选择少量的fields,即http response返回的数据量少时,工作正常;但如果选择多个fields或者不指定fields(即返回完整的trades数据)时,http response返回的数据出错,json解码返回null,不知是何原因?
用手机打开
收藏 ··· 回复
    有赞-饭团   游客   2017-06-06 | 只看该作者
    麻烦把具体的请求URL及入参 还有返回的信息发一下

      zjhgvip 青铜   2017-06-08 | 只看该作者
      有赞-饭团 发表于 2017-6-6 15:47
      麻烦把具体的请求URL及入参 还有返回的信息发一下


      以下是具体实现:
          $client = new YZSignClient($appId, $appSecret);
         
          $method = 'youzan.trade.get';//要调用的api名称
          $methodVersion = '3.0.0';//要调用的api版本号

          $params = [
              'tid' => 'E20170424214154021889440',
              //'fields' => 'buyer_message,trade_memo,status_str,payment,receiver_name,receiver_mobile,receiver_address',
          ];

          $obj = $client->post($method, $methodVersion, $params, $files);

      指定fields少数域,工作正常,返回如下数据:
      string(274) "{"response":{"trade":{"status_str":"\u5df2\u5b8c\u6210","payment":"90.00","buyer_message":"","trade_memo":"","receiver_name":"\u90ed\u654f\u4e3d","receiver_address":"\u8bf8\u66a8\u5e02\u516b\u4e00\u65b0\u6751\u516d\u5e62\u4e00\u5355\u5143","receiver_mobile":"13567579055"}}}"
      不指定fields,即返回对应trade的全部数据,返回出错,跟踪一下的话就是定位在json解码出错,也就是请求得到的原始数据有问题

        有赞-饭团   游客   2017-06-13 | 只看该作者
        你好,我刚用测试工具测试,不指定fields的情况也不存在该问题,您可以用测试工具测试一下https://www.youzanyun.com/docs/debugger
        这个工具用的就是PHP SDK
        如果仍然有问题 请直接联系我微信号youzanfantuan

          zjhgvip 青铜   2017-06-14 | 只看该作者
          有赞-饭团 发表于 2017-6-12 17:22
          你好,我刚用测试工具测试,不指定fields的情况也不存在该问题,您可以用测试工具测试一下https://www.youz ...


          你好,这个在线测试工具我之前就用过,确实不指定fields也是运行正确的。因为看到网页上给出的SDK请求示例代码是JAVA的,以为测试工具是JAVA的实现。但是我目前确实还是有问题,只要不指定fields就会出下面的错误提示:
              {"code":141,"error":"Cloud script error: response invalid, data: "}
          签名和免签名方式都试过了,相同的结果。如果你们测试正确,那或许是我使用的问题,或者跟环境有什么关系,具体我加你微信请教,谢谢

            1跳至
            您需要登录后才可以回帖 登录 | 立即注册

            本版积分规则

            复制链接
            新浪微博
            QQ空间
            微信扫码
            • 回复

            • 评分

            客服工作时间是9:00-18:00,客服妹子当前不在线,若不能及时回复请谅解。试试右上角的搜索吧,论坛有丰富的经验贴、公告贴,相信一定能够帮到您~

            复制成功