Laravel Websanova / Vue-Auth Вход / Регистрация Возврат Неопределенного URL - PullRequest
0 голосов
/ 10 июля 2019

Итак, я учусь создавать одностраничные приложения, используя Laravel & Vue.js, и нашел этот учебник .Я следил за всем, я ничего не менял, но я получаю это неопределенное значение всякий раз, когда я войду / зарегистрируюсь

Я дважды все проверил.

Изображение, показывающее http://127.0.0.1:8080/undefined/api/auth/login - https://imgur.com/LfpiMvS

Вот код:

Auth.js

import bearer from '@websanova/vue-auth/drivers/auth/bearer'
import axios from '@websanova/vue-auth/drivers/http/axios.1.x'
import router from '@websanova/vue-auth/drivers/router/vue-router.2.x'
// Auth base configuration some of this options
// can be override in method calls
const config = {
auth: bearer,
http: axios,
router: router,
tokenDefaultName: 'recipe-lists',
tokenStore: ['localStorage'],
rolesVar: 'role',
registerData: {url: "auth/register", method: 'POST', redirect: '/login'},
loginData: {url: "auth/login", method: 'POST', redirect: '/', fetchUser: true},
logoutData: {url: "auth/logout", method: 'POST', redirect: '/', makeRequest: true},
fetchData: {url: "auth/user", method: 'GET', enabled: true},
refreshData: {url: "auth/refresh", method: 'GET', enabled: true, interval: 30}
}
export default config

api.php

Route::prefix('auth')->group(function () {
Route::post('register', 'Auth\AuthController@register');
Route::post('login', 'Auth\AuthController@login');
Route::get('refresh', 'Auth\AuthController@refresh');
Route::group(['middleware' => 'auth:api'], function(){
Route::get('user', 'Auth\AuthController@user');
Route::post('logout', 'Auth\AuthController@logout');
});
});

login.vue

<script>
export default {
data() {
return {
email: null,
password: null,
has_error: false,
isProcessing: false,
}
},
methods: {
login() {
// Get the redirect object
this.isProcessing = true
var redirect = this.$auth.redirect()
this.$auth.login({
body: {
email: this.email,
password: this.password
},
success: function() {
// Handle Redirection
const redirectTo = redirect ? redirect.from.name : this.$auth.user().role === 2 ? 'admin.dashboard' : 'dashboard'
this.$router.push('/')
},
error: function() {
this.has_error = true
},
rememberMe: true,
fetchUser: true
})
}
}
}
</script>

Может кто-нибудь объяснить мне, что здесь происходит, довольно нубийский.

Спасибо!

Я ожидал URLбыть http://127.0.0.1:8080/api/auth/login

1 Ответ

0 голосов
/ 10 июля 2019

Оказывается, моя ошибка была из моего app.js , код:

axios.defaults.baseURL = `${process.env.MIX_APP_URL}/api`

После того, как я изменил его на:

axios.defaults.baseURL = `http://127.0.0.1:8000/api`

Это сработало, неопределенная вещь исчезла. Я не знал, почему первый не сработал, кроме меня.

Пользователь Reddit / u / mrcat323 помог мне получить ответ в / r / vuejs.

...