Угловая ошибка GET http://localhost/ 401 (несанкционированная) - PullRequest
0 голосов
/ 17 июня 2019

У меня проблема с загрузкой пользовательских данных на страницу.Я получаю эту ошибку: GET http://localhost/ 401 (неавторизовано).

В Laravel я поместил это в свой контроллер, чтобы получить все пользовательские данные:

public function index()
{
 $user = User::all(); return response()->json($user,201);
}

In AngularЯ создал файл data.service с этим кодом:

@Injectable({
    providedIn: 'root'
})

export class DataService {
  constructor(private http: HttpClient) { }
  findAll(): Observable<User[]>{return this.http.get<User[]>('http://localhost');}
}

И в файле app.component.ts я использовал этот метод для получения данных:

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})

export class AppComponent implements OnInit{
  users$: User[];
  constructor(private dataService: DataService){}
  ngOnInit(){return this.dataService.findAll().subscribe(data => this.users$ = data);}
}

В файле app.component.html я перебрал данные:

<div *ngFor='let user of users$'>{{user.name}}</div>

1 Ответ

0 голосов
/ 17 июня 2019

Это ошибка, возвращаемая угловой или laravel?Также обратите внимание на следующее:

  1. Вы не указываете порт на localhost
  2. Вы определяете user $ как массив, а не наблюдаемый, поэтому асинхронный канал не будет работатьвместо этого вы можете либо объявить пользователя $ как наблюдаемый, либо удалить асинхронный канал.

Вот лучшее решение:

export class AppComponent implements OnInit{
  users$: Observable<User[]>;
  constructor(private dataService: DataService){}
  ngOnInit(){
    this.user$ = this.dataService.findAll()
  }
}

, и в HTML ваш текущий код будет таким же, как онэто:

<div *ngFor='let user of users$'>{{user.name}}</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...