我通过DAJAX通过POST获取URL。在
然后将URL传递给下面的函数。引发类型错误。在
我不想将“img”保存到磁盘,然后重新打开它进行转换。在
我不知道还能做什么,所以我想我就是这个世界。提前谢谢你的帮助。在
def getqrcode(link):
bsettings = Bitcoinsettings.objects.get(pk=1)
qr = qrcode.QRCode(version=1, error_correction=qrcode.constants.ERROR_CORRECT_H, box_size=bsettings.qrcodesize , border=5,)
qr.add_data(link)
qr.make(fit=True)
img = qr.make_image()
output = StringIO.StringIO()
img.save(output, 'GIF')
contents = output.getvalue()
data = base64.b64encode(open(contents,'rb').read())
data = "data:image/png;base64," + data
output.close()
img = []
return data
TypeError: file() argument 1 must be encoded string without NULL bytes, not str
这是阿贾克斯.py代码。在
^{pr2}$
我不确定您是否理解返回
ouput.getvalue()
的内容,因为您正在尝试用但是在上面的一行
contents
已经包含了图像文件的字符串表示。几乎可以肯定的是,这里隐藏了file()
抱怨的恼人的空字节。在尝试通过以下方式更改上面的行:
^{pr2}$也可以查看StringIO引用。在
相关问题 更多 >
编程相关推荐