0

Inventory4zeroone.xml という名前のファイルに含まれている次の xml があります。

<?xml version="1.0" encoding="UTF-8"?>
<Flexquery>
  <QueryName>Ecommerce Inventory</QueryName>
  <Data>
    <Item>
      <Web>1</Web>
      <productID>8203291034586124284</productID>
      <item_SID></item_SID>
      <categoryID>MC</categoryID>
      <title>SWOOSH RND FRT HOOD WHITE LRG</title>
      <description>Great Product</description>
      <price>34.5</price>
      <qty>17</qty>
      <image>8203291034586124284.jpg</image>
      <thumb>8203291034586124284_t.jpg</thumb>
      <active>1</active>
      <updatedDate>3/18/2013 11:31:41 AM</updatedDate>
    </Item>
    <Item>
      <Web>1</Web>
      <productID>8203291034586124285</productID>
      <item_SID></item_SID>
      <categoryID>MC</categoryID>
      <title>ACME RND FRT HOOD WHITE LRG</title>
      <description>Great Product</description>
      <price>49.2</price>
      <qty>19</qty>
      <image>8603291034586124284.jpg</image>
      <thumb>8603291034586124284_t.jpg</thumb>
      <active>1</active>
      <updatedDate>3/18/2013 11:31:41 AM</updatedDate>
    </Item>
  </Data>
</Flexquery>

これはhttp://www.scrapbookcentral.co.nz/xml/inventory4zeroone.xmlで直接参照できます。

ただし、次のように CFHTTP 経由でこのファイルを取得しようとしたとき:

<cfhttp url="http://www.scrapbookcentral.co.nz/xml/inventory4zeroone.xml" 
        method="GET" 
        resolveurl="yes">

次のエラーが表示されます。

ここに画像の説明を入力

この状況はhttp://www.scrapbookcentral.co.nz/tasks/rpImportInventory.cfmで確認できます。

エラーの「ファイルの MIME タイプを判別できません」という部分を解決するサイトを見つけたので、呼び出しを次のように変更しました。

<cfhttp url="http://www.scrapbookcentral.co.nz/xml/inventory4zeroone.xml" 
        method="GET" 
        resolveurl="yes">
    <cfhttpparam type="header" name="mimetype" value="application/xml" />
</cfhttp>

それはうまくいきませんでした。まったく同じエラーが発生します。

そのため、ファイアウォールの問題である可能性があると言っている他のサイトを読みました。ただし、システム管理者は、これらのファイルにアクセスするためのファイアウォールの問題はないと言っています。

そのため、私は現在途方に暮れており、何か助けていただければ幸いです。

4

2 に答える 2

0

@Lucas が正しいと思います。ネットワークの問題である可能性があります。これを確認するには、fiddler ( http://fiddler2.com/ ) をインストールし、proxyServer="computer.running.fiddler" および proxyPort="8888" を cfhttp 呼び出しに追加します。

次に、ブラウザーと CF が使用している要求ヘッダーを比較できます。composer タブを使用して、CF が行った要求を編集および再実行できます。ブラウザのリクエストのヘッダーを 1 つずつ CF にコピーし、再試行します。ある時点で作業が開始され、変更が必要なヘッダーが見つかります。

于 2013-09-04T08:32:57.807 に答える