[環境]
OS:Windows10
構築環境:npm
言語:javascript
フレームワーク:vue2
[質問内容]
axiosを使用してのsendGridメール送信の行い方についてお聞きしたいです。
[状況]
npmで環境構築したVue2環境において、SendGridAPIのメール送信を行おうとしたところ、以下のようなエラーが表示されました。
(テスト用にmain.jsに直接書いています。)
[コード]
import Vue from 'vue'
import App from './App.vue'
Vue.config.productionTip = false
const sgMail = require('@sendgrid/mail');
const API_KEY = "XXXXX";
sgMail.setApiKey(API_KEY);
const msg = {
to: 'XXXXX',
from: 'XXXXX',
subject: 'test mail from sg',
text: 'hoge hoge',
html: '<p>foo bar</p>'
}
console.log(sgMail);
sgMail.send(msg).catch(e => console.log(e));
new Vue({
render: h => h(App),
}).$mount('#app')
[エラー]
AxiosError {message: 'Network Error', name: 'AxiosError', code: 'ERR_NETWORK', config: {…}, request: XMLHttpRequest, …}
code: "ERR_NETWORK"
config: {transitional: {…}, transformRequest: Array(1), transformResponse: Array(1), timeout: 0, adapter: ƒ, …}
message: "Network Error"
name: "AxiosError"
request: XMLHttpRequest {data: undefined, onreadystatechange: null, readyState: 4, timeout: 0, withCredentials: false, …}
response: XMLHttpRequest {data: undefined, onreadystatechange: null, readyState: 4, timeout: 0, withCredentials: false, …}
[[Prototype]]: Error
SendGridでバウンスの取得などをする際はAPI用のURLなどが存在するのでわかるのですが、メール送信でAxiosエラーが出る理由がわかりません。
それでもAxiosエラーが出たので、npmからAxiosをインストールし、並行処理ありきでメール送信をしようと思ったのですが、axios.get関数に割り当てるURLが何にあたるのかがわからず、停滞してしまっています。
[試したこと]
・一説では、プロキシっぽい実装にしなくてはいけないとのことだったので「vue.config.js」を「src」ディレクトリ配下に置きネットにある通り、targetを自身のローカルホストのポート番号に合わせるなども行っています。
・vueのインストールを行わず、sendGrid単体をjavascriptのみで実施した際にはメールの送信がうまくいきました。
vueと組み合わせることでエラーが起こるみたいです。
もし、同じ状態になったことのある方や、この事象に詳しい方がいらっしゃいましたらお聞きしたいです。
よろしくお願いします。
あなたの回答
tips
プレビュー