PHP XML のリクエストとレスポンスに少し戸惑っています。USPS の料金計算 API を Web サイトに適合させる必要がありますが、私が知っているのは、USPS が提供する XML だけです。ここで、PHP を使用してアイテムの ZIP と WEIGHT を API に送信する方法を考えました。
今のところ、これは私が持っているものです:
- ZIP と WEIGHT を uspsRateCalculator.php に送信する checkout.php
- uspsRateCalculator.php は ZIP と WEIGHT を受け取り、USPS API に要求する必要があります (ここで迷っています)
uspsRateCalculator.php のコードは次のとおりです。
$xml = rawurlencode('http://SERVER/PATH?API=RateV4&XML=<RateV4Request USERID="023TAHAR4995" ><Revision/>
<Package ID="1ST">
<Service>PRIORITY</Service>
<ZipOrigination>44106</ZipOrigination>
<ZipDestination>'.$zip.'</ZipDestination>
<Pounds>'.$pounds.'</Pounds>
<Container>NONRECTANGULAR</Container>
<Size>LARGE</Size>
<Width>15</Width>
<Length>30</Length>
<Height>15</Height>
<Girth>55</Girth>
</Package>
</RateV4Request>');
これをどのように「リクエスト」しますか?そして、どうすればこのようなレスポンスを取得できますか?
<?xml version="1.0" encoding="UTF-8"?>
<RateV4Response>
<Package ID="1ST">
<ZipOrigination>44106</ZipOrigination>
<ZipDestination>20770</ZipDestination>
<Pounds>1</Pounds>
<Ounces>8</Ounces>
<Container>NONRECTANGULAR</Container>
<Size>LARGE</Size>
<Width>15</Width>
<Length>30</Length>
<Height>15</Height>
<Girth>55</Girth>
<Zone>3</Zone>
<Postage CLASSID="1">
<MailService>Priority Mail<sup>&reg;</sup></MailService>
<Rate>24.85</Rate>
</Postage>
</Package>
</RateV4Response>
最後に、checkout.php ページで を取得する必要があります。