javascript - NuCaptcha 不渲染
问题描述
window.addEventListener('load', () => {
window
.fetch('https://services.share-pi.aarp.org/applications/CoreServices/WSOWebService/captcha/getWidget')
.then((resp) => resp.text())
.then(data => {
// Initialize the DOM parser
var parser = new window.DOMParser()
// Parse the text
var doc = parser.parseFromString(data, 'text/html')
// Print to console
console.log(doc.documentElement)
document.getElementById('nuCaptcha').appendChild(doc.documentElement)
})
})
<h3>NuCaptcha</h3>
<div id="nuCaptcha" class=""></div>
我正在实施 NuCaptcha - 类似于 Google Captcha。
我正在将我的请求响应打印到控制台中。当我将此响应粘贴到 JSBin 或空白 .html 中时。文件,它可以工作并显示验证码挑战,但添加到页面的验证码似乎没有呈现。
有人对为什么会这样有任何想法吗?
解决方案
诀窍是在粘贴下载的 html 后执行脚本。
window.addEventListener('load', () => {
window.fetch('https://services.share-pi.aarp.org/applications/CoreServices/WSOWebService/captcha/getWidget').then((resp) => resp.text()).then(data => {
var div = document.getElementById('nuCaptcha');
div.innerHTML = data;
var script = div.getElementsByTagName('script')
for (var i = 0; i < script.length; i++) eval(script[i].innerHTML);
})
})
<h3>NuCaptcha</h3>
<div id="nuCaptcha" class=""></div>
推荐阅读
- python - 尝试为 Anaconda 3.0 安装 pandas-datareader - CondaHTTPError:
- rust - Specialise type for polymorphic type
- keyboard - 键盘焦点的全局 UI 跟踪
- javascript - 计数增量器未在反应挂钩中设置状态
- android - 调试 Android 平台类的先决条件是什么?
- angular - 从同一服务器上的应用程序访问我的 api 时出现 CORS 错误
- ios - 运行 iOS v13.3 的 iPhone Xs 未显示在 Mac OS Catalina v10.15.2 上 Safari v13.0.4 的开发菜单中
- dart - 如何仅使用工厂构造函数子类化一个类?
- python - 一起使用 Cupy-Numpy 的优雅方式
- java - 在不同的片段中添加和显示项目到 RecyclerView