今天給一個網站開發微信二維碼支付,本地測試沒問題,但是上傳后在服務器上二維碼就是不顯示,打開路徑也可以打開就是生成的圖片內容不對。
后來用sesseion保存data參數解決。
但是多方尋找問題是url參數問題導致的,因為微信的參數是weixin://wxpay/bizpayurl 這種格式的,好像安全原因給過濾了,可能是無法獲取正確的
=============================
protected void Page_Load(object sender, EventArgs e)
{
if (Session["code"]!=null)
{
string str = Session["code"].ToString();
QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();
qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;
qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;
qrCodeEncoder.QRCodeVersion = 0;
qrCodeEncoder.QRCodeScale = 4;
//將字符串生成二維碼圖片
//將字符串生成二維碼圖片
Bitmap image = qrCodeEncoder.Encode(str);
//保存為PNG到內存流
MemoryStream ms = new MemoryStream();
image.Save(ms, ImageFormat.Png);
Response.ClearContent();
Response.ContentType = "image/Png";
//輸出二維碼圖片
Response.BinaryWrite(ms.GetBuffer());
Response.End();
}
}
