それについて多くのトピックがあることは知っていますが、どれもうまくいきませんでした。iframe コンテンツ (ソース コードではない) を取得するだけで済みます。
いくつかのパラメーターを別のサーバーに投稿するフォームがあり、それを iframe (同じページにあります) にターゲット設定します。したがって、ページを更新せずにiframeに保存されたサーバー応答コードを受け取ります。
<form name='vin_form' id='file_upload_form' action='*****' method='post'>
<input name='name1' value='value1'>
<input name='name2' value='value2' type='hidden'>
<input name='name3' value='value3' type='hidden'>
<div onclick=\"document.getElementById('file_upload_form').target = 'upload_target'; document.vin_form.submit();\">Send form</div>
</form>";
<iframe id='upload_target' name='upload_target'></iframe>
iframe コンテンツを取得するために、すべてを使用しましたが、何も機能しませんでした:
jQuery('#upload_target').load(function()
{
alert(jQuery('#upload_target').contents().find('body').html());
var myIFrame = document.getElementById('upload_target');
var content = myIFrame.contentWindow.document.body.innerHTML;
alert(content);
alert(window.frames.upload_target.document.body);
}
);
「same origin policy」について読みましたが、私の場合は禁止すべきではないと思います。なぜなら、そのページに URL でアクセスしてすべてのコードを読み取ることができるのに、なぜプログラムで実行できないのでしょうか?
PS: 別のサーバーからフォーム応答コードを取得する他の方法はありますか? (一部のサイト フレームワークの防御のため、php curl は機能しません)