簡體   English   中英

Axios GET 請求出錯,但我在瀏覽器中看到響應

[英]Axios GET request got error, but I see response in browser

嘗試在 Node.JS 上使用后端制作 VUE 應用程序。 但是最簡單的代碼不起作用。 我的后台:

const HTTPServer = require("http")

server = HTTPServer.createServer((req, res) => {
  console.log(req.url)
  console.log(req.method)
  res.write('Hello world!')
  res.end()
})

server.listen(3000, () => {
  console.log('Server is up')
})

我的前端:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <script src="https://unpkg.com/vue"></script>
    <script src="https://cdn.jsdelivr.net/npm/axios@0.12.0/dist/axios.min.js"></script>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css">
    <title>Get test</title>
</head>
<body>
<div id="app">
    <div>
        <button class="btn" @click="btn_pressed">Send GET request</button>
    </div>
    <div> {{comment}}</div>
</div>

<script>
    var app = new Vue({
        el: '#app',
        data: {
            comment: ''
        },
        methods: {
            btn_pressed: function () {
                axios
                    .get('http://localhost:3000')
                    .then(response => {
                        this.comment = 'Response is ' + response.data
                    })
                    .catch(error => {
                        this.comment = 'The error is ' + error
                    })
            }
        }
    })
</script>
</body>
</html>

我在 Chrome 的網絡活動中看到了正確的響應,但在代碼中出現了“網絡錯誤”。

你可以嘗試這樣的事情:

<script>
var app = new Vue({
    el: '#app',
    data: {
        comment: ''
    },
    mounted() {
        this.btn_pressed()
    },  
    methods: {
        btn_pressed() {
            axios.get('/')
                .then(res => {
                    this.comment = 'Response is ' + res.data
                })
                .catch(err => {
                    this.comment = 'The error is ' + err
                })
        }
    }
})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM