0

最近、いくつかのアプリケーションを ColdFusion 8 サーバーから ColdFusion 10 を実行する新しいマシンに移動しました。

私のスクリプトの 1 つが、現在、非常に奇妙な動作を示しています。

RSS フィードからコンテンツを取得するために cfhttp を使用していますが、cfhttp から返される「FileContent」が期待する URL と一致しません。

私が使用している URL が有効であること、および URL が提供する XML が検証テストに合格していることを確認しました。次のテスト コードは、RSS フィードから XML を取得し、画面に表示する必要があります。実際に返されるコンテンツがどこから来ているのかわかりません。

<cfset theFeedURL = "http://www.thonline.com/search/?q=&t=article&l=50&d=&d1=8/20/2014&d2=8/21/2014&s=priority&sd=desc&c[]=sports/local_sports*&f=rss&cacheBreaker=9876">
<cfhttp url="#theFeedURL#" result="MyRSS" resolveurl="yes"></cfhttp>
<cfoutput>#MyRSS.FileContent#</cfoutput>
4

2 に答える 2

2

ご回答ありがとうございますが、私はこの問題を解決しました。問題は、フィードを取得するために使用していた URL にありました。

私が使用しているクエリ文字列を見ると、スラッシュが含まれているアイテムがいくつかあります (d1、d2、および c[] 変数)。

その URL をそのままブラウザーに貼り付けて、必要なものを取得することはできますが、cfhttp はその方法を好みません。URLEncodedFormat()クエリ文字列のすべてのスラッシュを %2F に置き換えるために使用する必要があり、それで問題が解決しました。

于 2014-08-22T22:00:34.683 に答える
0

コードに追加<cfdump var="#MyRSS#" />して、できるだけ多くのトランザクションを表示します。

問題が解決しない場合は、getAsBinary='never'CFHTTP の属性を確認してください。

https://wikidocs.adobe.com/wiki/display/coldfusionen/cfhttp

于 2014-08-22T18:16:36.713 に答える