您可以使用 C# 或 JS/Ajax 跨站点 ping 另一个站点吗?
在我们的 Web 应用程序上,我尝试对第 3 方网站执行 ping 操作,看看它是否已启动,然后再将我们的客户重定向到该网站。到目前为止,除了桌面应用程序或系统控制台之外,我还没有找到其他方法可以做到这一点。这可能吗?我听说原来的ASP中有一个图像技巧。
目前我们使用 .NET MVC 和 Javascript。
谢谢你,
乔什
On our web application I am trying to ping a 3rd party site to see if it is up before redirecting our customers to it. So far I have not seen a way to do this other than from a desktop app or system console. Is this possible? I have heard that there was an image trick in original ASP.
Currently we are using .NET MVC with Javascript.
Thank you,
Josh
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以执行一个两阶段的过程,在该过程中进行 AJAX 调用,如果有效,则重定向到该站点。例如,AJAX 调用可以执行以下操作:
如果响应为 true,则重定向到该地址。
You can do a two stage process where you make an AJAX call and if it works then redirect to the site. For example, the AJAX call could do something like:
And if the response was true then redirect to the address.
请参阅此问题的答案以使用 jquery 来完成此操作。 如何测试a-url-in-jquery
See the answer on this question to do it using jquery. how-to-test-a-url-in-jquery
您可能正在寻找 System.Net.HttpWebRequest 类。您可以使用此类向第 3 方系统发出请求。如果它是 ASP.Net Web 应用程序,您可能会从隐藏代码中进行此调用。
然后您需要检查 200 响应代码。如果您必须担心安全性或传递用户 cookie,事情就会变得有点棘手。
You are probably looking for the System.Net.HttpWebRequest class. You can use this class to make a request to the 3rd party system. If it is a ASP.Net web app, you are probably making this call from your code behind.
You will then want to check for a 200 response code. Things get a little trickier if you have to worry about security, or passing along the users cookies.