【问题标题】:Easiest way to communicate with HTTP outside of ASP.NET?在 ASP.NET 之外与 HTTP 通信的最简单方法是什么?
【发布时间】:2011-03-19 08:48:18
【问题描述】:

我有一个 winform 应用程序,我想监听特定端口并能够通过浏览器访问该应用程序。我知道如何在 asp.net 项目中使用 HttpRequest 和 HttpResponse。但是有没有办法在 winform 应用程序中使用它们?还是它们的变种?目前我正在使用 TcpListener,我需要写出我的响应并解析请求(我只需要特定的信息,这很简单)。在 winform 应用程序中与 HTTP 通信的最简单方法是什么?

【问题讨论】:

  • 您打算如何通过 Web 浏览器界面使用您的 winforms 应用程序?
  • 如果您正在考虑在浏览器中托管您的 winforms 应用程序,那么您可能正在寻找 ClickOnce。
  • 我不确定这是否可行。我的应用需要全局热键,这需要一些 C API。

标签: .net winforms http tcp


【解决方案1】:

【讨论】:

    【解决方案2】:

    是的,您只需在您的参考资料中添加以下参考资料。

    System.Web
    System.Net
    

    winform 不会在其引用中添加System.Web,但您实际上可以添加它。我已经这样做了很多次了。

    【讨论】:

    • 是的,但是...使用我的 tcplistener 我如何从客户端获取请求到 HttpRequest?
    • 您是从 tcplistener 获取将要请求的 http 的 IP 地址,还是已经有了创建 HttpRequest 的地址?如果您从 tcplistener 获取 Ip,您可以使用来自 LocalEndPoint 或 RemoteEndPoint 的 tcplistener 的IPAddress。
    • 我还是不明白我是怎么得到一个 Http 对象的? ipaddress 是固定的 localhost,带有用户指定的端口。
    • 让我澄清一下,你为什么使用 tcplistener?这很重要吗?您要创建 HttpRequest 的 url 是什么?您要创建 HttpRequest 的 url 是来自 tcplistener 还是您已经拥有该 url?
    • 我正在使用 tcplistener,所以我不必使用套接字来获取传入连接。我用什么并不重要。该网址不存在,我作为服务器托管,因此我的浏览器或其他应用程序可以通过我的 HTTP 连接。我没有发出 http 请求,我 (http) 响应其他应用程序 httprequest 到我的应用程序。
    猜你喜欢
    • 1970-01-01
    • 2012-06-20
    • 2019-01-08
    • 2010-10-06
    • 2011-09-17
    • 2019-04-20
    • 1970-01-01
    • 1970-01-01
    • 2018-05-31
    相关资源
    最近更新 更多