Base62 with Vue and axios
Encodes and decodes using external API call with Vue.js and axios()
by kurin
HTML
<script src="https://unpkg.com/[email protected]/dist/axios.min.js"></script>
<div id="app">
<button @click="send">
send
</button>
<p v-html="log"></p>
</div>
JavaScript
/* http://base62.net/ */
var app = new Vue({
el: "#app",
data: {
headers: {
"Content-Type": "application/json",
"authorization": "key=AAAAXbQ0ATc:APA91bEHcnQc-Z5XZiD_IYcWTHaYfIxO_O6HLzo1Z9yRwlVzrRQzb_uRD7uwigtiP4miNpkH2PO7f0hdiP1DSN16YaR0lxlvYz5R1UzgOio_Vu63edY92m7qkXALNigPsJDyiTW1fn3H"
},
token: "foWgPkYA7M4:APA91bF4RxzPUGZUUJ6TwX2BmtgeFh01-PphIzjHEu0aImUU1aRmD1Hxu2ZcDTzx_6mHsYY7QzzjlYODCA2lgX8OTXy7l75xckBchoDFdN6eq2Q1vbnynGlZwkKixoNAFUCuVV9dRdzf",
log: ""
},
methods:{
send(){
var self = this
axios
.request({
url: "https://fcm.googleapis.com/fcm/send",
method: "post",
headers: this.headers,
data: {
// 一般通知は「notification」が必要ですが、
// Voipな特殊の通信はいらないです。
"notification": {
"title": "this is a title",
"body": "great wall"
},
"content_available": true,
"data":{
"chat_room_id": 123
},
/*
"data":{
"title": "",
"force-start": "1", // 必ず必要なパラメータ
"body" : "",
"content-available": "1",
"name" : "cat"
},
*/
"to": this.token
}
})
.then(function (response) {
self.log += "<br/>send message ok";
})
.catch(function (error) {
self.log += "<br/>send message error";
})
}
},
created: function () {
//this.send();
}
});