用HttpListener将winform作为服务器监听http请求,监听地址为本地服务器程序正常运行,将程序发布到服务器上以后报错:
1、你Localhost的时候指定了端口号5988,为啥用IP的时候就没有端口号了呢?
2、不止是端口号,后面的地址也是不一样的。
3、假设你用了端口映射,那么还有防火墙是否开启的问题。
用http://10.88.88.35:80/EIPGovSelfService/api/GovernmentApi/PostWinform/指定了端口也是报相同的错误,防火墙关闭了也没解决问题
地址不一样是因为一个是本地,一个是服务器上发布的程序,这个应该没问题
@浅色夏末: 还有一种可能就是你Listen的服务器开启的IP只开启了127.0.0.1的监听。这也是不行的。
@爱编程的大叔: 能详细说明下怎么排查这个问题吗
@浅色夏末:
1、首先你得先在本机上测试所有的可能,而不是到服务器上才测试。
本机访问有多种方式, localhost, 127.0.0.1, 192.168.?.?(看你的机器设定),甚至是外网映射IP。
2、不建议用Winform 方式提供服务。
@爱编程的大叔: 本机的localhost已经测通了,我的业务需求是终端机器上点击打印,打印操作向我的后台api发送post请求,我的api在把接收到的请求和访问数据库得到的其他数据一同用http post请求传给winform,winform接收到这些数据,调用ocx,生成处理结果,这些在本地解决方案都测试通过了,就是发布到服务器上不可以。以上的业务流程目前只能想到结合winform来解决。
@浅色夏末: 这个问题解决了吗?我也遇到相同的问题