lokielse / omnipay-unionpay

UnionPay driver for the Omnipay PHP payment processing library
MIT License
112 stars 43 forks source link

调用银联支付通用网关支付消费接口后,可不可以将错误的结果作为异常丢出? #13

Closed successgo closed 7 years ago

successgo commented 7 years ago

@lokielse 嗨,你好。

前言:

银联支付消费接口,返回的结果当中,如果发生错误时,

$this->data['respCode'] !== '00'

其中还有比较有意义的返回错误信息,我希望能将此信息报出异常,方便排查错误,因此说比直接判断有没有tn字段,来得友好(或不友好)。

我建议添加以下改进:

    public function isSuccessful()
    {
        if ('00' !== $this->data['respCode']) {
            throw new \Exception(sprintf('Err: code %s, message %s', $this->data['respCode'], $this->data['respMsg']));
        }

        return isset($this->data['tn']);
    }
successgo commented 7 years ago

用户层可以在

$response->getData()

中获取,并作处理。

所以我打算关闭这个issue.