2

私は、この Yahoo Store API を理解するのにかなりの時間を費やしています。私はインターネットで例を探しましたが、ほとんど何も思いつきませんでした。リクエストを作成しました:

String data = "";
data += "<?xml version=\"1.0\" encoding=\"utf-8\" ?>";
data += "<ystorewsRequest>";
data += "<StoreID>" + storeID + "</StoreID>";
data += "<SecurityHeader>";
data += "<PartnerStoreContractToken>" + token + "</PartnerStoreContractToken>";
data += "</SecurityHeader>";
data += "<Version> 1.0 </Version>";
data += "<Verb> get </Verb>";
data += "<ResourceList>";
data += "<OrderListQuery>";
data += "<Filter>";
data += "<Include> all </Include>";
data += "</Filter>";
data += "<QueryParams>";
data += "<OrderID> 5441 </OrderID>";
data += "</QueryParams>";
data += "</OrderListQuery>";
data += "</ResourceList>";
data += "</ystorewsRequest>";

API ドキュメントに記載されている URL にデータを送信しようとしました: https://MyStoreID.order.store.yahooapis.com/V1/order (文字列アドレスに保存)

url = new URL(address);

HttpURLConnection conn = (HttpURLConnection)url.openConnection();
conn.setDoOutput(true);
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
conn.setRequestMethod("POST");

String urlParameters = "query=" + data;

DataOutputStream wr = new DataOutputStream (
          conn.getOutputStream ());
  wr.writeBytes (urlParameters);
  wr.flush ();
  wr.close ();

BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));


line = rd.readLine();
rd.close();

結果としてこのエラーが発生します。

java.io.IOException: Server returned HTTP response code: 400 for URL: https://MyStoreID.order.store.yahooapis.com/V1/order
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown Source)

yahoo は貧弱なドキュメントをいくつか提供しており、私が見つけることができる例がないため、私はこれでほとんど完全に迷っています。Java から Yahoo API 呼び出しを使用して Yahoo ストアに接続しようとした人はいますか? この時点で何か助けていただければ幸いです。ありがとう。

4

1 に答える 1