Pertama, gunakan laluan imej sebagai parameter, dan ajax menghantarnya secara tidak segerak ke kaedah latar belakang untuk memuat naik ke pelayan. Ia tidak boleh menggunakan Jquery secara langsung untuk menghantarnya. Saya tidak akan bercakap kosong tentang kandungan tertentu Baca sahaja yang berikut, yang diperkenalkan secara terperinci.
Mula-mula, izinkan saya tunjukkan kepada anda rendering:
Pertama, halaman pertama ialah halaman awal, dan halaman kedua ialah kod QR yang dijana oleh pelayan selepas mengklik hantar Imej terus ditukar kepada rentetan dan dikembalikan ke halaman tanpa menyimpan imej.
Pengenalan:
Pertama sekali, kaedah menjana kod QR tanpa menyimpan ini boleh dilaksanakan menggunakan skrip pada bahagian hadapan, iaitu apa yang saya lakukan dalam projek itu.
Kemudian js nampaknya tidak dapat menerima aliran fail daripada pelayan untuk operasi, atas sebab keselamatan. Jika cara ini boleh, sila beritahu saya, terima kasih.
Memandangkan aliran fail tidak boleh diperolehi, maka dapatkan rentetan Teg mempunyai penggunaan khas dalam src, ia ditulis seperti ini: data:jquery mengawal paparan aliran imej yang dihasilkan oleh server_jquery/png;base64, iVBORw0KGgoAAAANSUhEUgAAAAAAAkCAYAAABId……………. … Yang berikut Rentetan yang panjang ialah rentetan gambar, dan kemudiannya terdapat kod yang sangat mudah untuk ditulis.
Pelayan:
public ActionResult GetFileASCII(string content) { System.IO.MemoryStream ms=new System.IO.MemoryStream(); //这一步是获取二维码 QRCodeHelper.GetQRCode(content, ms); return Content(Convert.ToBase64String(ms.GetBuffer())); }
Pelanggan:
$.get('url/*服务端地址*/', { content: 'http://blog.sina.com.cn/s/blog_50042fab0100mcuy.html/*要生成二维码的内容*/' }, function (data) { $('#testimg').attr('src', 'data:jquery mengawal paparan aliran imej yang dihasilkan oleh server_jquery/png;base64,' + data); });
Ringkasan:
Kod ini sangat mudah, bukan hanya kod QR, tetapi anda boleh melakukan ini tanpa menyimpan imej, seperti 'data:jquery mengawal paparan aliran imej yang dihasilkan oleh server_jquery/png;base64, yang juga boleh dijana pada bahagian pelayan.
Di atas adalah keseluruhan kandungan artikel ini, saya harap ia akan membantu semua orang.