我刚开始使用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码显示在页面上)。
答案 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的回复。