0

我从网络应用程序扫描的起点是这里的这篇文章然后 我意识到它就像点击这样的链接一样简单

http://zxing.appspot.com/scan?req=http%3A%2F%2FLOCAL_SERVER_NAME%2FMY_APP_NAME%2FMY_SERVLET%3Fcode%3D%7BCODE%7D

但它没有用。

我的网络应用程序很简单(使用 jquery 的 ajax)

$("#onebutton").click(function(){
        $.ajax({
            url: "http://zxing.appspot.com/scan",
            success:function(){
                alert("success");
            },
            error:function(){
                alert("error");
            },
            data:{
                req:"http%3A%2F%2F192.168.1.100:8080%2FMY_APP_NAME%2FMY_SERVLET%3Fcode%3D%7BCODE%7D"
            }

        });
    });

不用说“#onebutton”是一个带有那个id的按钮标签。当在 android 的浏览器上按下这样的按钮时,它总是会提醒错误消息。它不要求扫描仪启动。当我单击普通 PC 中的按钮时,控制台显示:

"Origin http://192.168.1.100:8080 is not allowed by Access-Control-Allow-Origin".

难道我做错了什么?。我错过了什么吗?

谢谢大家!!

4

2 回答 2

0

我不知道你是否完全理解链接的目的。

尝试添加到

Access-Control-Allow-Origin on server

或者

$("#onebutton").click(function(){
        $.ajax({
            url: "http://zxing.appspot.com/scan?ret=http%3A%2F%2F192.168.1.100:8080%2FMY_APP_NAME%2FMY_SERVLET%3Fcode%3D%7BCODE%7D",
            success:function(){
                alert("success");
            },
            error:function(){
                alert("error");
            }

        });
    });

但你可能不明白

<a href="zxing://scan/?ret=http%3A%2F%2Ffoo.com%2Fproducts%2F%7BCODE%7D%2Fdescription&SCAN_FORMATS=UPC_A,EAN_13"> ads </a>

这是为了打开zxing扫描仪获取一些代码信息并在打开后将其替换为给定的url

.../scan!ret=www.host.com/product_{code}.hmtl

扫描后打开网络浏览器

http://www.host.com/product_123.html

于 2013-01-23T22:46:26.440 回答
0

您应该使用这样的链接打开扫描仪:

<a href="zxing://scan/?ret=http://something.com/yourpage$status={CODE}"> 
    <span>My scan</span>
</a>

请注意,在我的示例中 $status 是一个变量,它采用扫描条形码的值。这会将值作为参数传递到它通向的页面的地址中。

我看到线程有点旧,但我希望这会对某人有所帮助。

于 2015-04-21T08:25:04.150 回答