iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 10
0
Modern Web

弄點簡單的 Chrome Extension 讓生活更方便系列 第 10

Chrome Extension 10 – 取得UV資料 Part 2 ..改使用 jsonp 取資料

  • 分享至 

  • xImage
  •  

續上篇,由於 aoxis 行不通,所以就改用 jsonp

安裝 jsonp
npm install jsonp

然後 index.js 改引用 jsonp

import Vue from 'vue'
import jsonp from 'jsonp';
import App from './App.vue'

Vue.prototype.jsonp = jsonp;
new Vue({
  el: '#app',
  render: h => h(App)
})

app.vue

<template>
  <div id="app">
    {{item.County}} - UV : {{ item.UVI }}
  </div>
</template>

<script>
export default {
  name: 'app',
  data () {
    return {
      item : {}
    }
  },
  mounted() {
    var vm = this;
    vm.getAir();
  },
  methods : {
    getAir : function(){
      var vm = this;
      var url = "https://opendata.epa.gov.tw/ws/Data/UV/?$orderby=PublishAgency&$skip=0&$top=1&format=json";
      this.jsonp(url, null, (err, data) => {
   if (err) {
     console.error(err.message);
   } else {
     if (data.length > 0) {
       vm.item = data[0];
     }
   }
 })
    }
  }
}
</script>

manifest.json 需要將呼叫的網址加入 content_security_policy

{
    "manifest_version" : 2, 
    "name" : "GetUV", 
    "version" : "1.0",
    "description" : "Get UV",
    "icons":{ 
        "128" : "icon128.png",
        "48"  : "icon48.png",
        "16"  : "icon16.png"
    },
    "browser_action" :{ 
        "default_icon" : "icon16.png",
        "default_popup" : "popup.html"
    },
    "content_security_policy": "script-src 'self' https://opendata.epa.gov.tw; object-src 'self'"
}

執行後點擊圖示,雖然速度不夠快,但是可以顯示 UV 數值
https://ithelp.ithome.com.tw/upload/images/20181025/2009422397bPyb82gn.png

感謝收看 :)


上一篇
Chrome Extension 09 – 取得UV資料 Part 1 ..使用 axios 取資料採雷
下一篇
Chrome Extension 11 - 增加右鍵複製網址功能
系列文
弄點簡單的 Chrome Extension 讓生活更方便30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言