Axios: Tidak tertangkap (dalam janji) TypeError: Tidak dapat membaca 'protokol' properti yang tidak ditentukan

Dibuat pada 1 Okt 2015  ·  30Komentar  ·  Sumber: axios/axios

Hai!

Saya mencoba menggunakan perpustakaan Anda tetapi saya mendapatkan kesalahan:

Uncaught (in promise) TypeError: Cannot read property 'protocol' of undefined

Saya menggunakan contoh Anda

axios.get('https://api.github.com/users/benjamingeorge')
  .then(function (res) {
    console.log(res.data);
  })
  .catch(function(res) {
    if(res instanceof Error) {
      console.log(res.message);
    } else {
      console.log(res.data);
    }
  });

Kesalahan terjadi di sini .
Saya menggunakan browserify dan chrome 45.

Komentar yang paling membantu

Jika Anda menggunakan vue atau yang lain hanya

import axios from 'axios'

Dan gunakan Axios secara normal tanpa menggunakan Vue.use(axios)

Semuanya bekerja dengan baik

Semua 30 komentar

Aku kacau dalam kode. Semuanya bekerja dengan baik sekarang.

Maukah Anda berbagi kesalahan yang Anda lakukan untuk referensi di masa mendatang?

Sebenarnya, saya bahkan tidak dapat mereproduksi kesalahan sekarang.

Saya mendapatkan kesalahan ini dari: axios.post('/api' [this.props.query]) Jika Anda tidak melihatnya, koma tidak ada di antara argumen. Saya menguji ini di node juga.

> var f = function(s, a) { return { s, a }};                                      
> f('s', ['a'])                                 
{ s: 's', a: [ 'a' ] }                          
> f('s' ['a'])                                  
{ s: undefined, a: undefined }

Jadi saya kira kesalahannya terkait dengan argumen yang tidak terdefinisi. Saya terkejut itu bukan kesalahan sintaksis.

Saya juga memenuhi pertanyaan ini. Tetapi saya juga dapat mengirim permintaan get dan post.
Saya menggunakannya di VUE, ketika saya menggunakan Vue.use(axios); , tidak melakukan hal lain. Terjadi kesalahan.
isURLSameOrigin.js?94c0:57 Uncaught (in promise) TypeError: Cannot read property 'protocol' of undefined
krom : 55.0.2883.87 m

Ada solusi? Saya juga menggunakannya dengan Vue.use(axios)
isURLSameOrigin.js?142d:61 Uncaught (in promise) TypeError: Cannot read property 'protocol' of undefined
Mungkin bisa tentang cara kita mengimportnya ke VueJS? Sepertinya tidak ada dokumen tentang cara mengimpornya dengan benar ke Vue, terutama saat menggunakan Webpack...

Setiap ide sangat dihargai!

@vpiskunov Mungkin karena Anda menggunakan axios asal, bukan plugin vue, Anda harus menggunakan Vue.prototype.$axios = axios jika Anda ingin instance vue memanggilnya

Saya mendapatkan kesalahan ini karena url tidak terdefinisi. Diperbaiki setelah saya mengatasi masalah itu.

Saya mendapat masalah yang sama, tetapi saya tidak menggunakan Vue.
Itu terjadi ketika saya memproses response.data menggunakan window object , tetapi ketika saya hanya console.log(response.data) ini tidak menunjukkan kesalahan apa pun.

@rohmanhm Itu karena permintaan Ajax berjalan pada lingkungan seperti "utas" terisolasi yang terpisah. Anda mungkin beruntung dengan memanggil .bind(this) atau .bind(window)

@vpiskunov maukah Anda memberi saya beberapa contoh?

Saya juga menggunakannya dengan Vue.use(axios)
isURLSameOrigin.js?142d:61 Tidak tertangkap (dalam janji) TypeError: Tidak dapat membaca 'protokol' properti dari undefined
ketika saya menghapus 'Vue.use(axios)', tidak apa-apa

Jika Anda menggunakan vue atau yang lain hanya

import axios from 'axios'

Dan gunakan Axios secara normal tanpa menggunakan Vue.use(axios)

Semuanya bekerja dengan baik

Hei, ketika saya menulis Vue.use(axios); di main.js saya mendapatkan kesalahan "Uncaught ReferenceError: axios is notdefined" dan tidak berubah ketika saya menghapusnya. Bagaimana saya bisa memecahkan masalah ini?

Terima kasih sebelumnya!

Jika Anda menggunakan:
import axios from 'axios';
axios.defaults.baseURL = process.env.BASE_URL;
export default axios;

Terjadi kesalahan

Menggunakan Laravel VUE JS, saya mengalami masalah yang sama. Namun ini memperbaikinya untuk saya -
window.axios = require('axios'); di resources/js/bootstrap.js sudah melakukan scaffold axios. Anda tidak perlu melakukan Vue.use(require('axios')); di resources/js/app.js.
Dalam kasus saya sendiri, inilah masalahnya, jadi saya menghapusnya dari app.js.

saya memecahkan masalah saya sendiri dengan menghapus Vue.use(axios)

Saya mendapatkan kesalahan ini karena url tidak terdefinisi. Diperbaiki setelah saya mengatasi masalah itu.

ini bekerja untuk saya, terima kasih

Saya mendapat masalah yang sama, tetapi saya tidak menggunakan Vue.
Itu terjadi ketika saya memproses response.data menggunakan window object , tetapi ketika saya hanya console.log(response.data) ini tidak menunjukkan kesalahan apa pun.

Sama disini. Saya tidak menggunakan axios.

saya memecahkan masalah saya sendiri dengan menghapus Vue.use(axios)

Ini berhasil untuk saya.

saya memecahkan masalah saya sendiri dengan menghapus Vue.use(axios)

Sama disini gak tau kenapa.

Saya pikir itu disebutkan dalam komentar sebelumnya oleh @rookiebulls , saya menggunakan Axios sebagai plug-in melalui Vue.use(VueAxios, axios) dan yang berhasil bagi saya adalah memanggil axios dari konteks Vue dengan menggunakan Vue.$axios .

saya memecahkan masalah saya sendiri dengan menghapus Vue.use(axios)

Terima kasih! Ini berhasil untuk saya!!

instal kedua axios dan vue-axios

impor axios dari 'axios'
impor VueAxios dari 'vue-axios'

Vue.use(VueAxios, axios)

itu berhasil untuk saya

masalah saya untuk masalah ini:


  1. impor aksio dari 'aksios';
    impor VueAxios dari 'vue-axios';
  1. Vue.use(VueAxios, axios); //pesan penting

Saya menyelesaikannya dengan menghapus impor di file main.js saya.
Jadi, saya menghapus keduanya
impor axios dari "axios",
dan Vue.use(axios)

Memiliki kesalahan yang sama dengan formulir bootstrap. $form.on('submit', (event) => event.preventDefault() memecahkan masalah.

GuyyyyyyyyyyyyyyyyyyyyyyyYYYYYYYYYYYYYYYYYYYYYYYYYYYyyyyyyyyyyyyyyyyyyyyyyyyy

cukup gunakan kode 4 baris ini dan SELESAI!

impor Vue dari 'vue'
impor axios dari 'axios'
import VueAxios dari 'vue-axios' ### _ baris ini penting untuk dihancurkan :) 'protocol' ERROR _ ###

Vue.use(VueAxios, axios)

.
.
.
LAKUKAN INI !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Saya menghadapi ini di React.js dan tidak ada solusi

Apakah halaman ini membantu?
0 / 5 - 0 peringkat