用于发出外部 Web 请求的页面事件

发布于 2024-10-21 08:40:21 字数 156 浏览 1 评论 0原文

我有一个 ASP.NET 应用程序,它通过 HttpWebRequest 从外部服务获取数据。当前请求是在 Page_Load 事件上发出的。该事件结束后,我的对象出现在页面中,并在 HTML 中输出它们的数据。有时网站会挂起并抛出超时异常。我应该将网络请求移至 Page_Load 之前的事件吗?

I have an ASP.NET app that gets its data form an external service, via HttpWebRequest. Currently the request is made on the Page_Load event. After that event finishes I have my objects in the page and I output their data in the HTML. Sometimes the site hangs and throws timeout exceptions. Should I move the web request to an event prior to Page_Load ?

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

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

发布评论

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

评论(2

半步萧音过轻尘 2024-10-28 08:40:21

嗯,我认为这取决于您需要该页面的信息。

检查此页面了解页面事件模型中数据何时可用,并查看当请求所需的所有数据均可用时。另外,当你收到回复时,你打算用它做什么?把它放在会话中?只是写出HTML吗?

您可能最好妥善处理超时,而不是烧毁 Web 服务器线程等待外部调用返回。

您可能还需要考虑对此数据的异步请求。詹姆斯的回应是一个很好的建议。您可能想查看他包含的链接。

Well, I think it depends on what information you need for the page.

Check this page for when data is available in the page event model and see when all of the data you need for the request is available. Also, when you get the response, what are you going to do with it? Put it in session? Just write out HTML?

You're probably better off handling the timeout gracefully rather than burning a web server thread waiting for an external call to return.

You may also want to consider an async request for this data. James' response is a great suggestion. You may want to check out the link he included.

最初的梦 2024-10-28 08:40:21

如果您希望避免加载并且网站可以在没有加载的情况下正常运行,那么将其设置为 AsynchHttpWebRequest 可能会更好。

请参阅此问题了解更多详细信息

If your looking to avoid the loading and the site can function without it, you might be better served making it an AsynchHttpWebRequest.

See this question for more details

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