локальный хост 4000 задан по умолчанию в переменной среды

#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