问题描述
对方是java代码发的prorobuf发的一个2进制数据流代码如下为什么我得到的context.Request.TotalBytes是0post什么数据都拿不到context.Request.InputStream拿不到数据请问要怎么样得到他发来的数据
解决方案
本帖最后由 qq_22259347 于 2016-04-07 15:03:30 编辑
解决方案二:
不要贴什么jsp、php的代码,没有必要。贴你的http调试器捕获的Request消息就行了,就能知道有没有正常地提交数据给ashx了。这就好像用一个万用电表去量一下是电池没电、还是机器短路,而不用去纠结这个电池制造商是谁。
解决方案三:
你要是真的懂技术,你给java程序员说你的http调试信息,他们能信服你,信服你真的懂技术。如果你贴asp.net代码,或者要求他们给你jsp代码你再上网“求救”,java程序员可能会嘲笑那些不懂技术的asp.net程序员。
解决方案四:
嗯,楼上在理应该将自己的调试结果拿出来。断点走,看看有没有进入,然后参数中是否完整等
解决方案五:
引用1楼sp1234的回复:
不要贴什么jsp、php的代码,没有必要。贴你的http调试器捕获的Request消息就行了,就能知道有没有正常地提交数据给ashx了。这就好像用一个万用电表去量一下是电池没电、还是机器短路,而不用去纠结这个电池制造商是谁。
是的所有都可以用Request["name名字"]来接收
解决方案六:
if(Request.HttpMethod.ToUpper()=="POST"){StreamReaderstream=newStreamReader(Request.InputStream);stringpoststr=stream.ReadToEnd();}试试能不能拿到
解决方案七:
额我再详细的说一下我现在有两个客户端一个是java一个是C#写的后端用的.net.在本地调试中两个客户端访问服务器都没有问题但是当我吧服务器架构到了外网之后C#客户端去访问服务器可以正常的访问收到消息并且解析但是java的就不可以了服务器收到的context.Request.TotalBytes是0
解决方案八:
引用6楼qq_22259347的回复:
额我再详细的说一下我现在有两个客户端一个是java一个是C#写的后端用的.net.在本地调试中两个客户端访问服务器都没有问题但是当我吧服务器架构到了外网之后C#客户端去访问服务器可以正常的访问收到消息并且解析但是java的就不可以了服务器收到的context.Request.TotalBytes是0
java的防火墙里开了端口么..?
解决方案九:
和别人调试,从来不管别人的说法,直接把请求打印出来,我接到了就是接到了,没接到就没接到,至于为什么没接到,你自己不晓得查你的问题啊!
解决方案十:
我没和别人调试我是要来他的代码自己架了JAVA的项目客户端。本机访问没问题外网就收不到POST来的数据。我还有一个C#的客户端本机和外网都可以。同一个服务器我不知道问题出在哪里。