4

ページAには、を実行するjavascripts関数が含まれていますXMLHttpRequest。ページはiframeにページをA読み込みます。Bページは関数をB実行し、関数はリクエストを実行します。リクエストのリファラー/オリジンはページであると思いますが、ページです。これを修正する方法はありますか?parent.makeRequest()XHRXHRBA

4

1 に答える 1

8

Refererヘッダーの値を制御することはできません。

メソッドを使用して XHR リクエストを作成するときに、一部の HTTP ヘッダーを調整できますsetRequestHeader。ただし、Refererヘッダーは明確に除外されます。仕様から:

上記のヘッダー [を含むReferer] は、ユーザー エージェントによって制御され、トランスポートの側面を制御できるようになります。これにより、データの整合性がある程度保証されます。

ただし、カスタム ヘッダーを設定することはできます。たとえば、X-Refererこれがアプリケーションに適している場合は、次のように使用できます。

xhr.setRequestHeader('X-Referer', location.href);
于 2011-05-06T13:57:52.047 に答える