[问题] iframe如何送access token -已解决

楼主: greenfish27   2018-05-29 19:14:33
(补上作法于下方,谢谢Gold740716)
大家好,我正在修改一个问题遇到了困难,想听听前辈们的各式建议 Q Q
以前iframe取跨网站的网页A都运作良好
最近网页A增加了token认证,所以要修改iframe呼叫
我不知道该如何在 iframe.src = A网页url; 时就带有token
试过使用 var xhr = new XMLHttpRequest();
给定 xhr.setRequestHeader('Authorization', 'Bearer 123');
iframe.srcdoc = this.reponse;
虽然的确可以取回页面资讯呈现,不过版面却乱糟糟的orz
**************调整方式**************
使用srcdoc填入html并不会触发script内容,这是我版面排版乱掉的原因
所以将上方亮紫部份改用contentWindow.document.write即可
iframe.contentWindow.document.open();
iframe.contentWindow.document.write(this.response);
iframe.contentWindow.document.close();
ref: https://harttle.land/2016/04/14/iframe-script-injection.html
************************************
或是我不该使用iframe 该换用怎样的容器呢?
(呜呜 公司也不允许用jq等套件,有看到网络一些是用.ajax post成功后
去修改iframe.src的方法我就没试了..)
谢谢~
作者: Gold740716 (项为之强)   2018-05-29 21:07:00
搞不好用 service worker onfetch 事件可以拦到 iframe 发的 request ,再手动加 header我之前是习惯用 iframe.contentDocument.write(html)
楼主: greenfish27   2018-05-29 22:52:00
谢谢Gold大大!onfetch感觉太黑科技 我应该一时半刻驾驭不了,不过document.write好像很有希望感(握拳) 原来许多26外挂广告都是用这招呀 奋斗试验中
作者: Gold740716 (项为之强)   2018-05-31 20:07:00
或觉 document.write 和 srcdoc 应该差不多啊^感觉另外如果 .write() 后没有 .close() 会一直转圈圈。正常应该是 .open() .write(html) .close()

Links booklink

Contact Us: admin [ a t ] ucptt.com