#angular #postman
#angular #почтальон
Вопрос:
Я пытаюсь понять логин и регистрацию, используя этот код по адресу.Этот код отлично работает при ng serve
запуске
https://jasonwatmore.com/post/2020/04/28/angular-9-user-registration-and-login-example-tutorial
Там среда настроена следующим образом.
export const environment = {
production: false,
apiUrl: 'http://localhost:4000'
};
В учетной записи службы входа в систему объявляется как
login(username, password) {
return this.http.post<User>(`${environment.apiUrl}/users/authenticate`, { username, password })
.pipe(map(user => {
// store user details and jwt token in local storage to keep user logged in between page refreshes
localStorage.setItem('user', JSON.stringify(user));
this.userSubject.next(user);
return user;
}));
}
Мои сомнения::
Почему работает localhost: 4000.Я попробовал с postman, и я получаю ответ page not found
Как я могу протестировать этот метод входа в систему с помощью postman.Он использует локальное хранилище.Возможно ли это.Почему он указан как порт 4000, когда я запускаю приложение, используя порт 4200. Если это глупый вопрос, пожалуйста, проигнорируйте меня.
Комментарии:
1. ‘apiUrl’ — это внутренний адрес API
2. @G.WKalpaSathjanaDeSilva Но почему мы указываем порт № 4000
3. что вы используете? поддельный сервер?
4. @G.WKalpaSathjanaDeSilva Я пытаюсь понять этот код. jasonwatmore.com/post/2020/04/28 /… .Поддельный серверный сервер по умолчанию использует порт 4000. Но я не могу воспроизвести его с помощью postman
Ответ №1:
apiUrl
необходимо указать, где выполняется ваш серверный код. При запуске ng serve ваш угловой код по-прежнему будет выполняться в порту 4200
по умолчанию, если вы не настроите его иначе. Для того чтобы порт 4000
работал так, как вы хотите, вам необходимо иметь там какой-то внутренний сервер. Обратите внимание , что вы по — прежнему будете открывать свой браузер для порта 4200
, и только ваш код будет вызывать порт 4000
Я предлагаю, если вам все еще трудно понять, что здесь происходит, узнать больше о вызовах REST и http