获取Google QR码API jQuery的请求

时间:2013-10-31 01:05:34

标签: jquery get google-visualization

我刚开始使用Google API(令人兴奋的东西)。我的页面上有一个图片代码,我想从google chart API获取源代码属性。我之前没有摆弄这些东西,所以我想出来了:

  //root URL
    var qrURL = 'https://chart.googleapis.com/chart?'
    //text to make QR code
    var qrText = 'hello world';
    //parameters 
    var qrOptions = {
        cht: 'qr',
        chs: '300x300',
        ch1: qrText
    }
    $.get(qrURL + qrOptions, function () {

    });
    $('#img').attr('src', qrURL);

在控制台中,这会返回一堆像行星一样的字符,我假设它是QR码图片的文本版本。但是,我想要做的是实际动态地在我的页面上获取该图像。我需要做什么来动态获取我想要的源属性集?

编辑: 我添加了这个:$('#img').attr('src', qrURL + $.param(qrOptions));但这给了我一个二维码,扫描时不包含实际文本(但它确实让QR码显示在页面上)。

1 个答案:

答案 0 :(得分:1)

你的行$.get(qrURL + qrOptions, function...格式不正确:你不能简单地将一个对象添加到一个字符串中,并期望一个url编码的字符串。 qrURL + qrOptions会生成字符串“https://chart.googleapis.com/chart?[objectObject]” - 不是您想要的。 $.get的正确参数为( url [, data ] [, success(data, textStatus, jqXHR) ] [, dataType ] )

因此,获取请求的正确格式为:

$.get(qrURL, qrOptions, function( reply ) { /* ... */ } );

然后,您可以在成功函数中使用reply来处理Google的回复。