gpt4 book ai didi

http - 如何在 IIS 中启用上传

转载 作者:塔克拉玛干 更新时间:2023-11-01 19:13:06 33 4
gpt4 key购买 nike

我的 IIS 实例上有一个名为 Uploads 的文件夹。我正在从我的 Android 应用程序执行 HTTP POST 以将文件上传到 IIS 服务器。

这是行不通的。操作看起来像这样(这是失败请求日志记录的一部分),

<failedRequest url="http://*ADDRESS*:80/JsonWCFService/Uploads"
siteId="1"
appPoolId=".NET4 App Pool"
processId="1176"
verb="POST"
remoteUserName=""
userName=""
tokenUserName="NT AUTHORITY\IUSR"
authenticationType="anonymous"
activityId="{00000000-0000-0000-6800-0080000000FA}"
failureReason="STATUS_CODE"
statusCode="200"
triggerStatusCode="405"
timeTaken="63"
xmlns:freb="http://schemas.microsoft.com/win/2006/06/iis/freb"
>

所以我们在那里收到了 405。我是否需要在 IIS 中配置更多内容?

我正在使用 PhoneGap API 通过 FileTransfer.upload 方法上传文件。

最佳答案

IIS 是一个网络服务器,它没有内置上传处理程序。如果您想在特定的 url 上使用 POST 上传文件,您必须创建一个实际的网络应用程序。

在这里阅读更多内容: http://support.microsoft.com/kb/189651

我能提出的最简单的解决方案是使用 HttpHandler 创建一个新的 asp.net 项目 - 代码看起来像这样(很简单因为它可以):

public class UploadHandler : IHttpHandler, IRequiresSessionState
{
public void ProcessRequest(HttpContext context)
{
try
{
HttpPostedFile file = context.Request.Files[0];
file.SaveAs(path);
}
catch (Exception ex)
{
// include your custom logging code
// Log.Error(ex.Message, ex);
throw;
}
}
}

请记住,这对于文件是可以接受的,您不应该将它用于大于几 MB 的文件。

关于http - 如何在 IIS 中启用上传,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8997556/

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