Vue. js & Express -Gateway CORS запрос - PullRequest
0 голосов
/ 02 мая 2020

У меня проблема с HTTP-запросом от компонента Vue. js к серверу со шлюзом express. Я предполагаю, что проблема в Express шлюзе, потому что даже если микросервис, который должен получить запрос, находится в автономном режиме, ошибка все равно отображается.

Код Vue. js очень прост и выглядит следующим образом:

await this.$http.post('http://localhost:8080/cartItems/',{
                    user_id: this.userId,
                    product_id: this.productId,
                    quantity: productQuantity,
                },{
                    headers:{
                        'Access-Control-Allow-Origin': '*',
                    }
                }).then(response => {
                    Vue.$toast.open({
                        position: 'bottom-right',
                        type: 'success',
                        duration: 3000,
                        message: '--------',
                    });
                })
                .catch(errors => {
                    Vue.$toast.open({
                        position: 'bottom-right',
                        type: 'error',
                        duration: 3000,
                        message: '--------',
                    });
                });

Ошибка в консоли:

Access to XMLHttpRequest at 'http://localhost:8080/cartItems/' from origin 'http://localhost:10000' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.

Странная вещь (странная для меня) заключается в том, что проблема появляется только с запросом POST, но не с GET request.

Я настроил шлюз с помощью политики cors (см. ниже), следуя документации, но не могу понять, что я делаю неправильно.

policies:
  - cors

......

pipelines:
  cart:
    apiEndpoints:
      - cart-view-update-delete
      - cart-add
      - cart-my
    policies:
      - cors:
          - action:
              origin: '*'
              methods: ['HEAD','PUT','PATCH','POST','DELETE']
      - proxy:
          - action:
              serviceEndpoint: cart
              changeOrigin: true
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...