Google apps script 如何让QR扫描仪回调到appscript html表单字段
我正在使用下面的代码从android chrome浏览器使用appscript页面触发一个条形码扫描仪android应用程序,并最终将扫描的代码放入我的appscript应用程序的html字段中 到目前为止,扫描仪被激活,扫描二维码,但随后返回url,最后显示二维码: 我得到以下错误: 未找到名为desc?QRcode=364的HTML文件。(第44行,文件“主文件”,项目“代码”) 我的主文件的第44行是: 返回HtmlService.createTemplateFromFile(e.parameter['page']).evaluate() 364是二维扫描码 我需要将二维码输入表单字段 desc.htmlGoogle apps script 如何让QR扫描仪回调到appscript html表单字段,google-apps-script,Google Apps Script,我正在使用下面的代码从android chrome浏览器使用appscript页面触发一个条形码扫描仪android应用程序,并最终将扫描的代码放入我的appscript应用程序的html字段中 到目前为止,扫描仪被激活,扫描二维码,但随后返回url,最后显示二维码: 我得到以下错误: 未找到名为desc?QRcode=364的HTML文件。(第44行,文件“主文件”,项目“代码”) 我的主文件的第44行是: 返回HtmlService.createTemplateFromFile(e.par
//检索url值
google.script.url.getLocation(函数(位置){
document.getElementById(“用户”).value=location.parameters.QRcode[0];
});
好的。。。我实现这一点的唯一方法是在url中不包含html文件名(
?page=desc
),而是将?QRcode={code}
放在它的位置。
它可能与?
部分有关。我认为,扫描器被编程为将其视为插入扫描代码的标记点。不确定,很高兴知道
下面是有效的代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<a href="zxing://scan/?
ret=https://script.google.com/macros/s/AKfycbxttv6npTySORy7Bm0xMu1sjGm-
XiUixl8GX5m2i1bMycEKFCTr/exec?QRcode={CODE}">Scan</a>
<input id="user" value="">
<script>
google.script.url.getLocation(function(location) {
document.getElementById("user").value = location.parameters.QRcode[0];
});
</script>
</body>
</html>
google.script.url.getLocation(函数(位置){
document.getElementById(“用户”).value=location.parameters.QRcode[0];
});
是否应该?QRcode={code}
是&QRcode={code}
?显示服务器端代码您是正确的,但问题就在这里,当我将?
更改为&
时,url停止返回QRcode部分,尽管它确实重新加载页面(没有QRcode={code}`)@我已将服务器端代码添加到上面的列表中。我还改变了检索值的方法。正如@Rafa所说,应该是&
,但不清楚您的新问题是什么。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<a href="zxing://scan/?
ret=https://script.google.com/macros/s/AKfycbxttv6npTySORy7Bm0xMu1sjGm-
XiUixl8GX5m2i1bMycEKFCTr/exec?QRcode={CODE}">Scan</a>
<input id="user" value="">
<script>
google.script.url.getLocation(function(location) {
document.getElementById("user").value = location.parameters.QRcode[0];
});
</script>
</body>
</html>