jquery控制显示服务器生成的图片流

(编辑:jimmy 日期: 2025/10/2 浏览:2)

首先把图片路径作为参数,ajax异步传到后台方法中上传服务器,直接用Jquery传是不行的,它没有权力跟服务器打交道,具体内容不废话了,直接看下文,介绍的很详细。

首先给大家展示下效果图:

jquery控制显示服务器生成的图片流

jquery控制显示服务器生成的图片流<

首先是第一副是初始的页面,第二副是点击submit之后服务端生成的二维码,没有保存图片直接将图片流转成字符串返回到页面。

简介:
首先,这种生成二维码方式,而且不需要保存的情况可以在前端使用脚本来实现,那我在项目里也是这样做的。

然后js好像是不能接受服务端的文件流进行操作的,出于安全考虑。如果这种方式是可以的话,请告诉我,谢谢。

既然不能获取文件流,那就获取字符串,<img>标签又有一种特殊的用法,在src中这般写法 data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAAEAAAAkCAYAAABId……………. 后面一长串是图片的字符串,然后就是代码,写法很容易。


服务端:

public ActionResult GetFileASCII(string content)
{ 
  System.IO.MemoryStream ms=new System.IO.MemoryStream();
  //这一步是获取二维码
  QRCodeHelper.GetQRCode(content, ms);
  return Content(Convert.ToBase64String(ms.GetBuffer()));
}


客户端:

$.get('url/*服务端地址*/', { content: 'http://blog.sina.com.cn/s/blog_50042fab0100mcuy.html/*要生成二维码的内容*/' }, function (data) {
  $('#testimg').attr('src', 'data:image/png;base64,' + data);
});

总结:
代码很简单,不仅是二维码,然而不需要保存的图片就可以这样做,像'data:image/png;base64, 也可在服务端生成。

以上内容就是本文的全部内容,希望对大家有所帮助。

一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。