我有HTML:
<button onclick="clickListener()" id="form-button" type="button" class="btn btn-primary">Click</button>
联森:
<script>
const clickListener = () => {
console.log('clickListener()')
fetch("/address")
.then(response => {
console.log(response)
})
.catch(e => {
console.log(e)
})
}
</script>
开始:
func Handler(writer http.ResponseWriter, request *http.Request) {
response := jsonResponse{IsAvailable: true, Message: "Available"}
responseInJsonFormat, err := json.MarshalIndent(response, "", " ")
if err != nil {
log.Println("cannot convert response data to JSON")
return
}
writer.Header().Set("Content-Type", "application/json")
_, err = writer.Write(responseInJsonFormat)
if err != nil {
log.Println("cannot convert response data to JSON")
}
}
如果我使用浏览器,我会得到JSON格式的响应,其中包含数据{IsAvailable:真,消息:“可用”}。
一切正常。
但是由于某些原因,我无法在JS中获得这些数据。我在JS中得到的响应是:
没有标题或数据。
我怎样才能得到它?
谢谢你!
1条答案
按热度按时间cyvaqqii1#
Fetch返回一个
Response
对象,然后必须将其解析为可用的格式,例如JSON或文本。由于您希望使用JSON格式,因此需要执行以下操作:查看"Using the Fetch API"以了解更多详细信息。