Tag: 响应

Python烧瓶故意空响应

有没有办法从特定的属性返回一个响应(来自make_response()对象或类似的),以便它不会再次渲染页面,也不会做任何事情。 我试图在服务器上运行代码而不生成任何输出 一个简单的“返回无”产生: ValueError: View function did not return a response 这应该是可能的,因为下面只是下载一个文件,并不呈现模板: myString = "First line of a document" response = make_response(myString) response.headers["Content-Disposition"] = "attachment; filename=myFile.txt" return response 任何帮助将不胜感激!

什么是内容语言和接受语言?

我已经看到了Content-Language和Accept-Language的HTTP头文件,有人能解释这些是什么和它们之间的区别吗? 我有一个多语言的网站,并想知道应该设置为网站当前选定的语言,由用户。

Express.js响应超时

问题 我一直在寻找Express.js的请求/响应超时,但一切似乎与连接而不是请求/响应本身有关。 如果请求花费很长时间,则应该超时。 显然这不应该发生,但即使是一个简单的错误,因为有一个没有调用callback或没有res.send()的路由处理程序,浏览器将一直等待回复。 一个空的路由处理器就是一个很好的例子。 app.get('/sessions/', function(req, res, callback){}); 固定 我在 app.use(app,router); 之前添加了以下内容app.use(app,router); 它似乎增加了超时function。 有没有人有任何经验/意见呢? app.use(function(req, res, next){ res.setTimeout(120000, function(){ console.log('Request has timed out.'); res.send(408); }); next(); }); 请注意,我已将超时设置为2分钟。

在'respond_to'格式语句中`:location => …`和`head:ok`是什么意思?

我正在使用Ruby on Rails 3,我想知道:location => …和head :ok语句在以下代码中的含义,它们是如何工作的以及如何使用这些语句。 respond_to do |format| format.xml { render :xml => @user, :status => :created, :location => @user } end respond_to do |format| format.xml { head :ok } end

如何在任何错误上返回HTTP 500代码,无论如何

我正在用PHP编写一个authentication脚本,被称为API,只有在批准请求的情况下才需要返回200,否则就是403(Forbidden)或500。 我遇到的问题是,在错误情况下,PHP返回200,而不是输出错误。 我怎样才能绝对确信PHP将返回一个HTTP 500代码,除非我自己显式地返回HTTP 200或HTTP 403? 换句话说,我想把任何和所有的警告或错误条件都变成500秒,没有例外,所以默认的情况是拒绝authentication请求,例外是用200代码来批准。 我已经摆弄了set_error_handler()和error_reporting(),但到目前为止没有运气。 例如,如果代码在发送HTTP响应代码之前输出了某些内容,那么PHP自然会报告在输出任何东西之后不能修改标题信息。 但是,这是由PHP报告的200响应代码与解释问题的HTML。 我甚至需要把这种东西变成500码。 这是可能的PHP? 或者我需要在更高级别上使用mod_rewrite吗? 如果是这样,任何想法如何设置?

如何判断一个控制器已经解决了什么格式的渲染

在以下代码的rails控制器操作中: respond_to do |format| format.json{ render :json=> {:status => 200, :response=>@some_resource} } format.html { redirect_to(some_resource_path)} end 我怎样才能logging控制器将parsing的格式,即“HTML”或“JSON”? format是收集器的types。 有没有获得一个string表示格式的方法?

把详细的REST错误消息放在HTTP警告头,好/坏主意?

如果出现问题,我们正在开发一个使用HTTP状态代码作为响应代码的标准REST服务。 (例如,无效的用户input将向客户端返回“400错误请求”) 但是,我们觉得更详细的错误信息对于客户是有用的。 (例如,无效input错误是由于X是无法识别的参数名称) 我们希望尽可能忠实于HTTP规范,所以在研究了RFC2616中的规范后,我们正在考虑将详细的错误消息放在HTTP头中,特别是在HTTP头警告字段中 。 它在RFC上说: 警告通用标题字段用于携带有关消息的状态或转换的附加信息,这些消息可能不会反映在消息中 。 这些信息通常用于警告caching操作或应用于消息的实体主体的转换可能缺乏语义透明度。 对于其他警告(比如REST错误消息),使用这个头文件似乎没有任何限制,甚至那些与这个头文件的初始意图无关的caching警告也是如此。 我们喜欢语义,我们计划使用299警告代码,这似乎很适合这个法案: 其他持续性警告警告性文本可能包含任何要呈现给用户的信息或logging 。 接收到此警告的系统不得采取任何自动操作。 所以,考虑到在这个问题的顶部提出了无效的input错误的情况下,我们正在考虑把我们的REST错误消息,如下面的例子: HTTP/1.1 400 Bad Request Warning: 299 ServiceName "Invalid input error: X is unrecognized parameter name." 这是一个好主意/练习吗? 我们还发现一些服务在X-Warning标题中详细描述了这个消息,但是这似乎不是标准的。 我们想知道,stackoverflow REST人群的蜂巢智慧会怎么想呢? 在REST响应中是否还有更好的/标准化的实践来传递详细的错误消息?

response.sendRedirect()和request.getRequestDispatcher()之间有什么区别?forward(request,response)

当我使用JAVA时,我的页面跳转出现问题,如果使用: response.sendRedirect("login.jsp") 那么我得到这个url: http://localhost:8080/login.jsp 但是,如果我使用 request.getRequestDispathcer("login.jsp").forward(request, response) 那么我得到这个url: http://localhost:8080/Shopping/login.jsp (“购物”是我的模块的名称)。 有什么不同?

从WebRequest中嘲笑WebResponse

我终于开始创build一些与REST风格的Web界面一起工作的应用程序了,但是,我担心的是,每当我点击F5来运行一系列testing时,我都会敲击他们的服务器。 基本上,我需要得到一系列的networking响应,所以我可以testing我正确parsing不同的响应,而不是每次都打他们的服务器,我想我可以做一次,保存XML,然后在本地工作。 然而,我不明白我怎么可以“嘲笑”一个WebResponse,因为(AFAIK)他们只能通过WebRequest.GetResponse 你们怎么去嘲笑这种事情呢? 你做? 我真的不喜欢我锤击他们的服务器的事实:我不想更改代码太多 ,但我希望有一个这样做的优雅方式.. 更新以下接受 威尔的回答是我需要的巴掌,我知道我错过了一个基本点! 创build一个接口,它将返回一个表示XML的代理对象。 实现接口两次,一个使用WebRequest,另一个返回静态“响应”。 接口implmentation然后根据响应实例化返回types,或者静态XML。 然后,您可以在testing或生产时将所需的类传递给服务层。 一旦我的代码被打倒,我会贴一些样本。

JQuery – 将ajax响应存储到全局variables中

我仍然是jQuery和ajax场景的新手,但我有一个$ .ajax请求执行一个GET来检索一些XML文件(〜6KB或更less),但是在用户花费在该页面的XML内容应该不会/不会改变(这个devise我不能改变,我也没有改变XML文件,因为我正在从别的地方读取它)。 因此,我有一个全局variables,它将响应数据存储到数据中,并且对数据的任何后续查找都在这个variables上完成,因此不需要进行多个请求。 鉴于XML文件可以增加的事实,我不知道这是最好的做法,也来自java背景,我对全球公共variables的想法通常是一个禁忌。 所以我的问题是,是否有更好的方法来做到这一点,以及如果文件扩展到一些荒谬的文件大小是否会导致任何内存问题的问题? 我认为数据可以传递给xml对象中的一些getter / settertypes的函数,这将解决我的全局公共variables问题,但仍然提出了是否应该将响应存储在对象本身中的问题。 例如,我现在做的是: // top of code var xml; // get the file $.ajax({ type: "GET", url: "test.xml", dataType: "xml", success : function(data) { xml = data; } }); // at a later stage do something with the 'xml' object var foo = $(xml).find('something').attr('somethingElse');