调用 api 时报错 {"远程服务器返回错误: (403) 已禁止"}

发布于 2022-09-01 05:18:00 字数 583 浏览 16 评论 0

具体是

//首先读取文件流
Stream  stream = file.InputStream;
//流转换成img
Image img = Bitmap.FromStream(stream);
stream.Close();
//生成二维码,返回MemoryStream
Stream qrstream = BuildQrCodeByCommonComponent(content, level, size, img);
 //直接调用UpYunHelper.UploadImage(Stream stream)不行
 byte[] postData = UpYunHelper.StreamToBytes(qrstream);
//这里调用API接口,进行了一些封装
 return UpYunHelper.UploadImage2(postData);

之后这里就不行了,具体执行这里的时候报异常

var response = (HttpWebResponse)request.GetResponse();

可能的错误 qrstream,不是 MemoryStream,类型的,各位大侠帮我看看,在线等啊!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浴红衣 2022-09-08 05:18:00

最终还是解决了,主要是因为存在这个异常
引发异常:ReadTimeout”引发了“System.InvalidOperationException”,导致使用又拍云接口失败,这是只需要再读取之前把读取的位置复位到0的位置就可以了,至于道理还是不清楚。

加下面这行代码就可以了
qrstream .Seek(0, SeekOrigin.Begin);
这个问题在处理图片这中问题的时候很常见。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文