varobj =newWxLogin({
id:"login_container",
appid:"",
scope:"",
redirect_uri:"",
state:"",
style:"",
href:"../qrcode.css"//就是这个属性});
在href中传入样式文件的地址,会报错。貌似微信为了安全考虑,只允许访问https的资源。于是现在采用第二种解决办法data-url。
创建一个data-url.js文件。具体代码实现为:
var fs = require('fs');
// function to encode file data to base64 encoded string
function base64_encode(file) {
// read binary data
var bitmap = fs.readFileSync(file);
// convert binary data to base64 encoded string
return 'data:text/css;base64,'+new Buffer(bitmap).toString('base64');
}
console.log(base64_encode('./qrcode.css'))
运行node data-url脚本,将当前目录的qrcode.css文件内容转为base64字符串,复制打印出来的data-url,然后赋值给刚才的href。
varobj =newWxLogin({
id:"login_container",
appid:"",
scope:"",
redirect_uri:"",
state:"",
style:"",
href:"data:text/css;base64,LmltcG93ZXJCb3ggLnFyY29kZSB7d2lkdGg6IDIwMHB4O30NCi5pbXBvd2VyQm94IC50aXRsZSB7ZGlzcGxheTogbm9uZTt9DQouaW1wb3dlckJveCAuaW5mbyB7d2lkdGg6IDIwMHB4O30NCi5zdGF0dXNfaWNvbiB7ZGlzcGxheTpub25lf
Q0KLmltcG93ZXJCb3ggLnN0YXR1cyB7dGV4dC1hbGlnbjogY2VudGVyO30="//data-url});
注意这里的MIME类型,一定要返回text/css。