Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# windows server 2012中的Fiddler4导致RestSharp请求为空_C#_Neo4j_Fiddler_Restsharp_Windows Server 2012 - Fatal编程技术网

C# windows server 2012中的Fiddler4导致RestSharp请求为空

C# windows server 2012中的Fiddler4导致RestSharp请求为空,c#,neo4j,fiddler,restsharp,windows-server-2012,C#,Neo4j,Fiddler,Restsharp,Windows Server 2012,所以我在纯REST中测试Neo4J(没有Neo4JClient),我有以下代码: var client = new RestClient("http://url"); string requestText = "{ \"query\" : \"start x = node(1) match path = (x--IsFriendOf) return path, IsFriendOf.name\", \"params\" : { }}";

所以我在纯REST中测试Neo4J(没有Neo4JClient),我有以下代码:

       var client = new RestClient("http://url");

        string requestText = "{  \"query\" : \"start x  = node(1) match path = (x--IsFriendOf) return path, IsFriendOf.name\",  \"params\" : {  }}";

        var request = new RestRequest();

        request.Method = Method.POST;
        request.RequestFormat = DataFormat.Json;
        request.Resource = "/foo/bar";
        request.AddHeader("Content-Length", requestText.Length.ToString());
        request.AddHeader("Host", "ip:port");
        request.AddHeader("Accept", "application/json");
        request.AddHeader("Content-Type", "application/json");

        request.AddHeader("Authorization", "Basic encoded64credentials");


        request.AddBody(requestText);



        IRestResponse response = client.Execute(request);
如果我在Fiddler中执行原始请求,我会得到期望的结果

但如果我在.Net 4.5中的控制台应用程序中执行此操作,我会看到:

我在防火墙中创建了一个规则,允许控制台可执行文件的传入/传出请求,我停用了IE保护模式,但仍然没有成功


有人知道这个问题吗?

我不敢相信我写的是什么,但显然错误是由Fiddler本身造成的,我会找出Fiddler中断我通话的内在机制

因此,如果您向不在端口80上的REST API发出http请求,并且使用WireShark或Fiddler,则该请求永远不会到达端点

我不知道如何解决它,但我知道如何避免它,也就是说,关闭服务器上的所有流量监视器。在我的例子中,我打开了Wireshark和Fiddler4来帮助我调试http请求内容,但当然,我永远无法意识到发生了什么,因为我正在使用引发错误的工具进行调试


我在windows server 2012中使用了Fiddler4,如果这对任何人都有用的话,我会在VS2012和.Net Framework 4.5中使用Fiddler4

这里有很多错误

首先要了解的是,你根本看不到请求——在这个屏幕截图中显示的请求是IE下载兼容性视图列表信息,而不是你自己提出的任何请求


您可能应该从阅读开始,了解Windows 8/Windows Server 2012是如何改变的,以及您需要做些什么才能在本地环回代理中捕获它们的流量。

您从.NET获得了什么?您已经说明了在Fiddler中看到的内容,但没有说明代码实际返回的内容。一个错误,可能是一个错误代码?谢谢老兄!我在meta上看到了你的消息,我会在那里回复,在这里我可以告诉你,代码没有做任何事情,就像是做了很多尝试,在一个阈值之后,你得到了空字符串只是为了添加,实际上你可以在图中看到问题,如果我对一个特定的URL发出HTTP请求,Fiddler截获了这个请求,并向我显示它正在被挖掘,因为我从来没有看到原始的web请求。谢谢@EricLaw,我搜索了几十年,寻找一个可以描述我遇到的问题的博客,我知道它必须是关于最新版本的,因为我以前从未遇到过这个问题,再次感谢你。旁注,从Fiddler的创造者那里得到答案真的有点酷。FWIW这回答了我的问题,因为我不知道发生了什么,但我在AppContainer实用程序上仍然有一个问题,你能帮我解决吗?以下是问题(针对fiddler4问题):