gpt4 book ai didi

c# - Image.FromStream 错误 - 无法发送动词类型的内容正文

转载 作者:可可西里 更新时间:2023-11-01 17:34:31 24 4
gpt4 key购买 nike

我在 C# 中这样做:

Image image = Image.FromStream(fullSizeAppLogo.FileStream);

FileStream 属性在单独的类中定义为:

public System.IO.Stream FileStream
{
get
{
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(this.Url);
return request.GetRequestStream();
}
}

其中“this.Url”是我要检索的图像的 URL。我在这一行收到错误“无法发送具有此动词类型的内容正文”:

return request.GetRequestStream();

所以看起来 request.GetRequestStream 是一个 GET 请求,而这一行:

Image.FromStream(fullSizeAppLogo.FileStream)

似乎正在尝试发送内容主体。我不明白为什么 Image.FromStream 会尝试发送内容主体 - 为什么会这样?

通过将我的“请求”对象的方法更改为 POST 来修复此错误似乎不正确,因为 HttpWebRequest 实际上应该执行 URL 的 GET 请求,所以这肯定不是有效的修复对于这个问题。解决此问题的“正确”方法是什么?

最佳答案

您正在尝试获取 GET 请求的 RequestStream,这没有意义,因为您没有发送任何内容。

您应该使用 Response 来获取下载图像的流:

   HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(this.Url);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
return response.GetResponseStream();

请注意,调用它的代码会在另一端正确处理流。

关于c# - Image.FromStream 错误 - 无法发送动词类型的内容正文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35571920/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com