0

こんにちは、javascript/ajax を使用して nytimes Web サイトのコンテンツをスクレイピングしようとしている演習を行っています。

クロス ドメイン ajax リクエストを送信するために、nytimes Web サイト コンテンツを含む jsonp レスポンスを返すプロキシ サーバーを使用しています。

しかし、その html コンテンツには「無効な文字」エラーをスローする文字 (単一引用符) が含まれているためです。

<script type="text/javascript" src="http://json-proxy.jgate.de/?callback=callback&url=http%3A%2F%2Fwww.nytimes.com%2F"></script>
<script>
function callback(obj) {
 alert(obj);
}
</script>

このエラーの可能な解決策は何ですか? そして、これを解決するための他の選択肢は何ですか?

ありがとう

(ps この質問は、インタビューで私の友人の 1 人に尋ねられました)

更新:これはyahoo pipesのリンクです。 http://pipes.yahoo.com/pipes/pipe.run?_id=748e37c218ed0747d0b868ae8eafefa6&_render=json

4

2 に答える 2

0

サーバー上の文字をエスケープする必要があります。

callback('<!DOCTYPE html PUBLIC \"-//W...etc.') // notice the \"-//W

それ以外の:

callback('<!DOCTYPE html PUBLIC "-//W...etc.') // which will eventually create an error

/\"'などのすべての特殊文字を/\ ...にエスケープします。

于 2010-06-26T20:49:50.113 に答える
0

Yahoo パイプがその問題を修正しました。

于 2010-07-06T22:50:47.897 に答える