Apple 应用内购买验证收据返回 xml

Posted

技术标签:

【中文标题】Apple 应用内购买验证收据返回 xml【英文标题】:Apple in app purchase verify receipt returning xml 【发布时间】:2013-03-19 23:46:11 【问题描述】:

突然间https://buy.itunes.apple.com/verifyReceipt 现在间歇性地返回一个 xml 响应。沙盒模式不这样做。如果你愿意的话,它看起来像 api docs a plist wsdl。其他人看到这样的回复:

HTTP/1.1 200 Apple WebObjects
Content-Length: 5782
x-apple-jingle-correlation-key: JI6NEX6V3DMRO
pod: 51
x-apple-orig-url-path: /verifyReceipt
x-apple-request-store-front: <null>
x-apple-translated-wo-url: /verifyReceipt
x-set-apple-store-front: 143441-1,8
x-apple-application-site: ST11
edge-control: no-store, cache-maxage=0
Set-Cookie: Pod=51; version="1"; expires=Fri, 19-Apr-2013 23:38:52 GMT; path=/;            domain=.apple.com, mzf_in=510546; version="1"; path=/WebObjects; domain=.apple.com; secure, mzf_odc=ST1; version="1"; expires=Wed, 20-Mar-2013 00:08:52 GMT; path=/WebObjects; domain=.apple.com, mzf_dr=0; version="1"; expires=Thu, 01-Jan-1970 00:00:00 GMT; path=/WebObjects; domain=.apple.com
 apple-timing-app: 5 ms
 Cache-Control: private, no-cache, no-store, no-transform, must-revalidate, max-age=0
 x-apple-asset-version: 0
 Expires: Tue, 19 Mar 2013 23:38:52 GMT
 Content-Type: text/xml; charset=UTF-8
 x-apple-lokamai-no-cache: true
 x-apple-date-generated: Tue, 19 Mar 2013 23:38:52 GMT
 x-apple-application-instance: 510546
 Pragma: no-cache
 x-webobjects-loadaverage: 30
 Date: Tue, 19 Mar 2013 23:38:52 GMT

<?xml version="1.0" encoding="UTF-8" standalone="no"?>

<Document xmlns="http://www.apple.com/itms/">

<Protocol>
    <plist version="1.0">
        <dict>
            <key>jingleDocType</key><string>initiateSecureSessionSuccess</string>
            <key>jingleAction</key><string>initiateSecureSession</string>
            <key>urlBag</key>
            <dict>
                    <key>authenticateAccount</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/authenticate</string>
<key>iPhoneActivation</key><string>https://albert.apple.com/verifyReceipt/ALActivation.woa/wa/iPhoneRegistration</string>
<key>device-activation</key><string>https://albert.apple.com/verifyReceipt/ALActivation.woa/wa/deviceActivation</string>
<key>carrierDeviceInfo</key><string>https://albert.apple.com/verifyReceipt/ALActivation.woa/wa/carrierDeviceInfo</string>
<key>authorizeMachine</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/authorizeMachine</string>
<key>buyProduct</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/buyProduct</string>
<key>buyCart</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/buyCart</string>
<key>deauthorizeMachine</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/deauthorizeMachine</string>
<key>machineAuthorizationInfo</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFastFinance.woa/wa/machineAuthorizationInfo</string>
<key>modifyAccount</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/accountSummary</string>
<key>pendingSongs</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/pendingSongs</string>
<key>signup</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/signupWizard</string>
<key>songDownloadDone</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFastFinance.woa/wa/songDownloadDone</string>
<key>forgottenPassword</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/iForgot</string>
<key>myInfo</key><string>https://appleid.apple.com/</string>
<key>noAOLAccounts</key><false/>
<key>logout</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/logout</string>
<key>addToCart</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/addToCart</string>
<key>removeFromCart</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/removeFromCart</string>
<key>shoppingCart</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/shoppingCart</string>
<key>bcURLs</key><array><string>http://.phobos.apple.com</string><string>http://www.atdmt.com</string></array>
<key>reportPodcast</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/reportPodcast</string>
<key>check-download-queue</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/checkDownloadQueue</string>
<key>set-auto-download</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/setAutoDownload</string>
<key>new-ipod-user</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/iPodRegistration</string>
<key>new-tv-user</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/iTVRegistration</string>
<key>md5-mismatch</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/md5Mismatch</string>
<key>report-error</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/reportErrorFromClient</string>
<key>updateAsset</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/updateAsset</string>
<key>create-token</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/createToken</string>
<key>create-session</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/createSession</string>

    <key>digital-copy</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/digitalCopyWizard</string>

<key>p2-redemption</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/p2RedeemCode</string>
<key>p2-redeem-service-terms-url</key><string>http://www.apple.com/legal/itunes/ww/</string>
<key>pendingApps</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/pendingApps</string>
<key>checkAppQueue</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/checkAppDownloadQueue</string>
<key>marketing-action</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/viewMarketingPage</string>      


  <key>mint-offers</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/presentOffers</string>
  <key>mint-account</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/accountSummary</string>
  <key>mint-account-fragment</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/accountSummaryFragment</string>



<key>uploadPublishedPlaylist</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/uploadPublishedPlayList</string>
<key>giftPlaylist</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/giftSongsWizard</string>
<key>give-playlist</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/giftSongsWizard</string>



  <key>adopt-product</key><string>https://buy.itunes.apple.com/verifyReceipt/MZFinance.woa/wa/adoptProduct</string>



            </dict>
        </dict>
    </plist>
</Protocol>

</Document>

【问题讨论】:

我也看到了。也许这是一个刚刚部署的错误? 【参考方案1】:

这是生产 verifyReceipt 服务的问题。

提交 DTS 票证,让他们知道该问题。我确定他们现在正在努力。

我的服务器记录显示,过去一小时内返回 XML 的请求数量有所下降。

【讨论】:

【参考方案2】:

苹果官方回答

发生的技术问题现已解决 - 对于给您带来的不便,我们深表歉意。目前无法提供更多详细信息。

今天看起来工作正常,一定是部署不好。

【讨论】:

以上是关于Apple 应用内购买验证收据返回 xml的主要内容,如果未能解决你的问题,请参考以下文章

iOS 7 本地(设备上)收据验证和应用内购买检查

一次购买的 Apple 应用内购买 transaction_id 有时会发生变化

iOS 7:应用内购买收据验证和验证

在报亭中处理应用内购买

如果 iOS 购买收据验证失败怎么办?

iOS中应用内购买的服务器端验证最佳实践