我正在使用谷歌云 SQL 作为数据库....我正在通过 UrlFetch 获取图像内容,然后将 FetchResponse 转换为 blob....但是当我尝试从数据库中获取 blob 数据并尝试将其作为图像上传时它不是在职的....
Code :
var base = 'https://www.google.com/m8/feeds/';
var fetchArgs = googleOAuth_('contacts', base);
fetchArgs.method='GET'
var photoURL==// url for image
var image=UrlFetchApp.fetch(photoURL,fetchArgs)
var imageBlob=image.getBlob()
imageBlob 将存储在数据库中,其中 PHOTO 字段在数据库中具有 LONgBLOB 类型
现在我正在尝试获取照片
var conn = Jdbc.getCloudSqlConnection("jdbc:google:rdbms://"+instance_name+"/"+database_name);
var stmt=conn.createStatement()
var query="select PHOTO from user_info"
var rs=stmt.executeQuery(query)
rs.next()
var image=rs.getBlob(1)
现在将此 blob 用于 html 文件,如下所示:
<html>
<body>
<center>
<p>This is image</p>
<img src="data:image/jpeg;base64,"+Base64.encode(image) width="100" height="100"/ >
<p> This is image</p>
</center>
</body>
</html>
它没有显示任何图像,它只是显示图像区域..如果我做错了什么,请告诉我..
实际代码:网络脚本:
function doGet() {
return HtmlService.createTemplateFromFile("image").evaluate();
}
function myFunction(){
var conn = Jdbc.getCloudSqlConnection("jdbc:google:rdbms://"+instance_name+"/"+database_name);
var stmt=conn.createStatement()
var query="select PHOTO from user_info"
var rs=stmt.executeQuery(query)
rs.next()
var image=rs.getBlob(1)
stmt.close()
conn.close()
return image
}
图像.html
<html>
<body>
<center>
<p>This is image</p>
<img src="data:image/jpeg;base64,"+Base64.encode(<?= myFunction()?>) width="100" height="100"/ >
<p> This is image</p>
</center>
</body>
</html>