I have a Vue project from @vue/cli 3.x.
The proxy I defined in package.json based on this article is not working. The destination server doesn't see the API request.
What am I missing here?
The vue file:
<script lang="ts">
import { Component, Prop, Vue } from 'vue-property-decorator';
import VueResource from 'vue-resource';
Vue.use(VueResource);
@Component
export default class HelloWorld extends Vue {
  @Prop() private msg!: string;
  constructor() {
    super();
    this.$http.post('/api');
  }
}
</script>
package.json:
  "proxy": {
    "/api": "http://localhost:9000/api"
  },
                The article likely refers to an outdated method of setting up the proxy. The latest version of @vue/cli (currently 3.0.0-rc.3) has a new method of configuring the dev server.
For an equivalent setup of that proxy, create vue.config.js (if it doesn't exist already) with the following contents:
module.exports = {
  devServer: {
    proxy: {
      '/api': {
        target: 'http://localhost:9000',
        ws: true,
        changeOrigin: true
      }
    }
  }
}
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With