Tag: 请求

python模拟请求和响应

我是一个初学者在python中使用模拟并尝试使用http://www.voidspace.org.uk/python/mock 。 请告诉我的基本要求,让我在以下情况下工作。 我正在使用pythons请求模块。 在我的views.py,我有一个函数,使每次requests.get()调用各种不同的响应 def myview(request): res1 = requests.get('aurl') res2 = request.get('burl') res3 = request.get('curl') 在我的testingclass,我想要做这样的事情,但不能找出确切的方法调用 步骤1: //Mock the requests module //when mockedRequests.get('aurl') is called then return 'a response' //when mockedRequests.get('burl') is called then return 'b response' //when mockedRequests.get('curl') is called then return 'c response' 第2步: 打电话给我的观点 第3步: validation响应包含“一个响应”,“b响应”,“c响应” 请帮我完成第1步。

在ASP.NET MVC和IIS7中logging原始HTTP请求/响应

我正在编写一个Web服务(使用ASP.NET MVC),为了支持的目的,我们希望能够尽可能接近地logging请求和响应到原始的在线格式(即包括HTTP方法,path,所有标题和正文)到数据库中。 我不确定的是如何以最less的“错位”方式来获得这些数据。 我可以通过检查HttpRequest对象的所有属性并从它们构build一个string(以及类似的响应)来重新构成我认为请求看起来像的内容,但是我真的想要得到实际的请求/响应数据这是在电线上发送的。 我很高兴使用任何拦截机制,如filter,模块等,解决scheme可以特定于IIS7。 但是,我宁愿只保留在托pipe代码中。 任何build议? 编辑:我注意到, HttpRequest有一个SaveAs方法,可以将请求保存到磁盘,但这使用内部帮助器方法的负载重build内部状态的请求,不能公开访问(为什么这不允许保存到用户提供的stream我不知道)。 所以它开始看起来像我将尽我所能重build从对象的请求/响应文本…呻吟。 编辑2:请注意,我说的整个请求,包括方法,path,标题等。目前的反应只看在身体stream不包括这个信息。 编辑3:没有人在这里读问题吗? 目前为止有五个答案,但还没有人提供一个获得整个原始的在线请求的方法。 是的,我知道我可以从请求对象中捕获输出stream,头文件和URL以及所有这些东西。 我已经说过,在这个问题上,请看: 我可以通过检查HttpRequest对象的所有属性并从它们构build一个string(以及类似的响应)来重新构成我认为请求看起来像的内容,但是我真的想要得到实际的请求/响应数据这是在电线上发送的。 如果您知道完整的原始数据(包括标题,url,http方法等),则无法检索,那么知道这些数据就很有用。 同样的,如果你知道如何以原始格式(是的,我还是指包括头文件,url,http方法等等)来完成这个工作,而不需要重新构build它,那么这就是非常有用的。 但是告诉我,我可以从HttpRequest / HttpResponse对象重build它是没有用的。 我知道。 我已经说过了。 请注意:在任何人开始说这是一个坏主意之前,或者会限制可伸缩性等,我们也将在分布式环境中实现节stream,顺序传输和反重放机制,因此无论如何都需要数据库日志logging。 我不想讨论这是否是一个好主意,我正在寻找如何做到这一点。

Android Volley + JSONObjectRequestcaching

public class CustomRequest extends JsonObjectRequest { public CustomRequest(String url, JSONObject params, Listener<JSONObject> listener, ErrorListener errorListener) throws JSONException { super(Method.POST,url, params, listener, errorListener); this.setShouldCache(Boolean.TRUE); } } 我希望这段代码足以让我隐式caching响应。 我不确定它是否有效,因为我是在发送请求时的假设下: 它会先打高速caching,然后发送回应 那么当结果通过远程服务器时,它会将其提供给响应者 更新: 我想如何手动检索caching并将其重构为JSONObject并通过OnResponse函数发送,但考虑到存在隐式caching,这似乎并不高效。 JsonObjectRequest类应该返回JSONObject作为caching项而不是原始响应数据。 但是我仍然有兴趣知道我是否犯了一些错误。 含糊不清只是由于缺乏文件,所以我很抱歉,如果我失去了一些相当明显的东西。

我在哪里可以find所有浏览器的默认超时设置?

我正在寻找一些文档,指定每个浏览器(IE6 / IE7 / FF2 / FF3等)在请求放弃和超时之前等待多长时间。 我没有任何运气试图得到这个。 任何指针?

从rails中的控制器提交POST数据到另一个网站

在我使用轨道上的ruby构build的Web应用程序中,我有一个用户使用一些基本数据提交的表单。 数据在控制器中被检索,并且需要保持私密的更多信息被添加。 然后,我需要发送一个post请求到外部网站与控制器的所有组合数据。 什么是最好的方法来做到这一点? 在此先感谢您的帮助。

为什么浏览器不能发送gzip请求?

如果web服务器可以发送gzip响应,为什么浏览器不能发送gzip请求?

Pragma和Cache-control标题之间的区别?

我读了关于维基百科上的Pragma标题: “Pragma:no-cache header字段是一个HTTP / 1.0头,用于请求中,这是浏览器告诉服务器和任何中间caching它想要一个新的资源版本,而不是服务器告诉浏览器不要caching资源,一些用户代理在响应中确实注意到了这个头,但是HTTP / 1.1 RFC特别警告不要依赖这种行为。 但我还没有明白它的作用? 其值为no-cache的Cache-Control头和值为no-cache Pragma之间有什么区别?

如何使用ActionContext中的参数,请求和会话对象?

在此代码中,我使用ActionContext从Request对象获取Session和ServletActionContext。 我觉得这是不好的做法,因为必须使用ActionContext仅用于Request对象。 ActionContext的Request对象是否等同于Servlet中的Request对象? 如果是的话,如何获取使用它的请求参数? Map session = (Map) ActionContext.getContext().getSession(); HttpServletRequest request = ServletActionContext.getRequest(); String operatorId = request.getParameter("operatorId"); session.put("OperatorId", operatorId); // getting hashmap from Bean analysisNames= slsLoginDetailsRemote.getAnalysisNamesIdMap(); // sending map for multiselect session.put("AnalysisNames",analysisNames);

在PHP中处理json请求

当进行ajax调用时,当contentType被设置为application / json而不是默认的x-www-form-urlencoded时,服务器端(在PHP中)无法获得post参数。 在下面的工作示例中,如果在ajax请求中将contentType设置为“application / json”,则PHP $ _POST将为空。 为什么会发生? 我怎样才能在PHP中正确处理contentType是application / json的请求? $.ajax({ cache: false, type: "POST", url: "xxx.php", //contentType: "application/json", processData: true, data: {my_params:123}, success: function(res) {}, complete: function(XMLHttpRequest, text_status) {} });

Node.js – 使用Express获取原始请求主体

当我使用Express时,我的代码是: app.use(express.bodyParser()); 我将如何获得原始请求的身体 ?