[英]Restful API C# Reading from .Txt File
我正在尝试构建我的第一个 API,我希望它从 .txt 文件中读取一些文本。
我最初编写代码是将文本存储在内存中,然后在 HTTP Get 请求后将其删除。 当我在 Visual Studio 中运行它时,我让它正常工作,所以我决定将它部署到 Azure。 然后我会发出 HTTP 请求以将更多文本添加到内存中,然后我基本上会请求它回来,但是我不会得到我想要的文本。 相反,我会收到错误消息,说列表中没有包含我想要的文本的内容。
然后我决定让它将文本写入 .txt 文件,然后从中接收。 这再次对我有用,但是一旦我将代码发布到 Azure 并发送请求,我就会收到500 Internal Server Error
。
在这个长篇故事的最后是我的问题,因为我似乎无法在 Azure Web 服务器上找到有关 .txt 文件的任何详细信息。
是否可以让我的 API Web 应用程序的 Models 文件夹中的 C# 类读取 Azure 服务器上的 .txt 文件?
是否可以让我的 API Web 应用程序的 Models 文件夹中的 C# 类读取 Azure 服务器上的 .txt 文件?
简短的回答:是的。
稍长的答案:是的,但是......
正如评论中所发布的那样,从 Web 应用程序中的文件读取和写入信息可能会很快变坏。 想想两个用户同时尝试写,一个用户正在阅读,另一个用户正在写,依此类推。
现在我可以想象您现在唯一想做的就是测试它是否有效,因此可能不会考虑多个用户。 但即使是概念证明也应该采用正确的方法,否则你可能会以错误的方式学习一些东西。
看看将您的信息存储在 Azure 内的数据存储中,有很多选择。 为此,最好使用设置起来不太难的东西,例如Table Storage 。 如果您在尝试使其正常工作时遇到任何问题,请提出一个新问题,我们将很乐意提供帮助。
500 Internal Server Error
,这些是服务器端的一般错误。 我通过使用以下步骤重现了相同的问题并且工作正常。
在 Azure 上部署后显示 500 错误。
您发现启用Application Insights
的实际错误并转到“失败”选项卡。 您可以看到发生的实际错误。 点击错误
请参阅错误和文件位置。
检查文件位置,如果文件不存在位置,则在该位置创建一个文件。 转到高级工具
点击前往链接。
从调试控制台下拉菜单中选择 Cmd。 然后点击站点->wwwroot 创建一个txt文件
输出:现在它的工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.