douruye5092 2017-11-15 13:55 采纳率: 100%
浏览 77
已采纳

axios不会将POST发送到golang api

I have a golang api backend with a negroni middleware.

I already implemented the CORS handler for negroni, so my api should allow cross origin resource sharing.

// allow OPTIONS method of CORS requests
c := cors.New(cors.Options{
    AllowedOrigins: []string{"http://127.0.0.1"},
})

//common.StartUp() - Replaced with init method
// Get the mux router object
router := routers.InitRoutes()
// Create a negroni instance
n := negroni.Classic()
n.Use(c)
n.UseHandler(router)

server := &http.Server{
    Addr:    common.AppConfig.Server,
    Handler: n,
}
log.Println("Listening...")
server.ListenAndServe()

This is from the https://github.com/rs/cors/blob/master/examples/negroni/server.go example of implementing CORS with negroni.

Nevertheless my api now responses a 200 status back to my frontend, but the frontend does not send the POST request to the server. This my axios code:

import axios from 'axios';
const data = {
email: 'user@mail.com',
password: 'secret',
};

export default {
name: 'Login',
methods: {
login() {
  axios.post('https://127.0.0.1:8090/users/login', data);
},

enter image description here Postman does not have any problems with sending the POST request. What am I doing wrong?

  • 写回答

1条回答 默认 最新

  • dou91808 2017-11-16 10:49
    关注

    Okay I found a solution for the problem:

    As described in this article, I added some more options to the cors negroni plugin. One important option that was missing in my application was the line

    AllowedHeaders: []string{"X-Auth-Key", "X-Auth-Secret", "Content-Type"},
    

    Because my app sent the Content-Type Header and the api refused it.

    I hope this will help others with similar problems.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 onvif+openssl,vs2022编译openssl64
  • ¥15 iOS 自定义输入法-第三方输入法
  • ¥15 很想要一个很好的答案或提示
  • ¥15 扫描项目中发现AndroidOS.Agent、Android/SmsThief.LI!tr
  • ¥15 怀疑手机被监控,请问怎么解决和防止
  • ¥15 Qt下使用tcp获取数据的详细操作
  • ¥15 idea右下角设置编码是灰色的
  • ¥15 全志H618ROM新增分区
  • ¥15 在grasshopper里DrawViewportWires更改预览后,禁用电池仍然显示
  • ¥15 NAO机器人的录音程序保存问题