duanqiongchong0354 2011-08-31 21:34
浏览 74
已采纳

UPS API使用cURL和PHP ...格式良好的XML问题

The UPS server keeps giving me this response :

HTTP/1.1 200 OK
Server: Apache
Content-Length: 429
X-Powered-By: Servlet/2.5 JSP/2.1
Content-Type: application/xml
Expires: Wed, 31 Aug 2011 21:28:12 GMT
Cache-Control: max-age=0, no-cache, no-store
Pragma: no-cache
Date: Wed, 31 Aug 2011 21:28:12 GMT
Connection: keep-alive

with this error:

<AddressValidationResponse>
   <Response>
      <TransactionReference>
         <XpciVersion>1.0001</XpciVersion>
      </TransactionReference>
      <ResponseStatusCode>0</ResponseStatusCode>
      <ResponseStatusDescription>Failure</ResponseStatusDescription>
      <Error>
         <ErrorSeverity>Hard</ErrorSeverity>
            <ErrorCode>10001</ErrorCode>
            <ErrorDescription>The XML document is not well formed</ErrorDescription>
      </Error>
   </Response>
</AddressValidationResponse>

Here is the PHP code I am sending to the server. Is there an error that I am missing and overlooking?

$data = '<?xml version=\"1.0\" ?>
                <AccessRequest xml:lang=\"en-US\">
                    <AccessLicenseNumber>$this->AccessLicenseNumber</AccessLicenseNumber>
                    <UserId>$this->UserId</UserId>
                    <Password>$this->Password</Password>
                </AccessRequest>
                <?xml version=\"1.0\" ?>
                <AddressValidationRequest xml:lang=\"en-US\">
                    <Request>
                        <TransactionReference>
                            <XpciVersion>1.0001</XpciVersion>
                        </TransactionReference> 
                        <RequestAction>XAV</RequestAction> 
                        <RequestOption>3</RequestOption>
                    </Request>
                    <AddressKeyFormat>
                        <AddressLine>$address</AddressLine>
                        <PoliticalDivision2>$city</PoliticalDivision2>
                        <PoliticalDivision1>$state</PoliticalDivision1>
                        <PostcodePrimaryLow>$zip</PostcodePrimaryLow>
                        <CountryCode>US</CountryCode>
                    </AddressKeyFormat>
                </AddressValidationRequest>';

Any help would be greatly appreciated. Thank you.

  • 写回答

1条回答 默认 最新

  • du3932066 2011-08-31 21:40
    关注

    You have to use " instead of ' to wrap your xml, like this:

    $data="<?xml...";
    

    PHP only replaces variables inside of "

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值