Http 编写临时响应-go服务器
我正在编写Go服务器和客户机,但我不知道如何编写临时响应(状态代码1xx)。我已经搜索了这方面的文档和示例,但没有找到任何东西。 我的搜索确实找到了一些关于分块回答的信息,但我认为这不是我所需要的 我真的只想发送一个临时响应,让客户机知道请求已被接收(并且一些信息已被验证),而服务器为最终响应获取更多数据。 将在我的javascript客户端上使用ajax发出请求。我想我可以自己找出客户的部分,但我是新手,我真的需要一些帮助来写回复 我没有太多相关的代码要显示,因为我完全不知道从哪里开始。但这是我试图构建的最基本的Go服务器…如果有帮助的话Http 编写临时响应-go服务器,http,go,Http,Go,我正在编写Go服务器和客户机,但我不知道如何编写临时响应(状态代码1xx)。我已经搜索了这方面的文档和示例,但没有找到任何东西。 我的搜索确实找到了一些关于分块回答的信息,但我认为这不是我所需要的 我真的只想发送一个临时响应,让客户机知道请求已被接收(并且一些信息已被验证),而服务器为最终响应获取更多数据。 将在我的javascript客户端上使用ajax发出请求。我想我可以自己找出客户的部分,但我是新手,我真的需要一些帮助来写回复 我没有太多相关的代码要显示,因为我完全不知道从哪里开始。但这是
package main
import (
"fmt"
"net/http"
)
func handle(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "existence is pain")
}
func main() {
http.HandleFunc("/", handle)
http.ListenAndServe(":8000", nil)
}
这是我的出发点,也是我陷入困境的地方。
我想做一些像这样的事情
//validate request
//send interim response
//get more data
//send complete response
是否有允许我发送临时响应的net/http函数?
我是否应该使用http.HandleFunc()
来处理类似的问题?(我应该用什么?)
如果有人有这样一个例子,或者能为我指出正确的方向,那会很有帮助
另外,如果“临时”不是公认的行话,我也很抱歉。如果这导致了混乱,那么我的来源是:如果请求有头,那么是net/http服务器
应用程序的逻辑是:
- 请求可以吗?
- 如果是,请阅读请求正文并按正常方式进行
- 如果否,则以错误响应。不要阅读请求正文
- 请求可以吗?
- 如果是,请阅读请求正文并按正常方式进行
- 如果否,则以错误响应。不要阅读请求正文
func handle(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http. StatusContinue) // 100 code
fmt.Fprintf(w, "existence is pain")
}