今天给一个网站开发微信二维码支付,本地测试没问题,但是上传后在服务器上二维码就是不显示,打开路径也可以打开就是生成的图片内容不对。
后来用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();
}
}