如何发送对fetch API的响应

时间:2016-12-17 06:21:27

标签: post go http-post

我正在使用'unknown' API将数据发送到我的fetch请求...

POST

很简单,只需将fetch('http://localhost:8080/validation', { method:'POST', headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' }, body: JSON.stringify({ email:this.state.email, password:this.state.password }) }) .then((response) => response.json()) .then((responseJson) => { console.log("response"); }) .catch(function(error) { console.log(error); }) email发送给password处理程序即可。收到并保存没有错误,但现在我想发回自定义响应。

目前,我的回复引发了错误。我的POST处理程序如下所示......

Post

我不知道如何发送回复。我假设我需要首先编码为func Validate(rw http.ResponseWriter, req *http.Request, _ httprouter.Params) { decoder := json.NewDecoder(req.Body) var creds credentials err := decoder.Decode(&creds) if err != nil { panic(err) } ... 然后发送它。但是我该如何发送呢?

假设我想返回一个字符串json,我需要"success"吗?或者使用return

1 个答案:

答案 0 :(得分:1)

您将回复写入http.ResponseWriter。例如:

func Validate(rw http.ResponseWriter, req *http.Request, _ httprouter.Params) {

    decoder := json.NewDecoder(req.Body)

    var creds credentials

    err := decoder.Decode(&creds)

    if err != nil {
        panic(err)
    }

    // rw is the HTTP response writer.
    fmt.Fprintf(rw, "success")
}