2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

WebAPIを使用した簡易アプリ作成(rails)

Last updated at Posted at 2021-01-31

APIとは

APIとは「Application Programming Interface(アプリケーション・プログラミング・インターフェイス)」の略語であり、「ある1つの機能に特化したプログラムで共有可能なもの」や「ソフトウェアの機能を共有する仕組み」のことです。

Web APIの場合、プログラムはWeb上に公開され、外部から呼び出して利用します。
https://www.internetacademy.jp/it/programming/javascript/how-to-use-web-api.html

今回行ったこと

rails学習もまだ浅いので、アプリ作成の練習をかねて以下の事を行いました。
→ユーザーが住んでいるコロナの情報を1つのページの表示する
・ユーザー情報登録(名前、メアド、お住まいの都道府県)
・ユーザーの登録されているの都道府県のコロナの情報をapiを使って1つのページに表示する

使用したAPIに関する記事

Google News ↓ コロナのニュース取得に使用
https://qiita.com/KMD/items/872d8f4eed5d6ebf5df1

都道府県別 PCR 検査実施人数
https://coronavirus-esrijapan-ej.hub.arcgis.com/datasets/全期間・検査陽性者の状況別集計(ポイント版・都道府県別)

日本の都道府県ごとのCOVID-19(コロナウイルス)情報を取得するためのWeb API
https://github.com/ryo-ma/covid19-japan-web-api/blob/master/README.ja.md

※数値は正確ではない可能性がありますので、正しくは公的機関からのレポートを参照してください。

開発(API部分)

class HomeController < ApplicationController
  require 'net/http'
  require 'uri'
  require 'json'
  require 'open-uri'
  def index
    # ログインしているユーザーのお住まいの都道府県を取得↓
    prefecture_name =current_user.prefecture_name

    uri_encode = URI.encode "https://services.arcgis.com/wlVTGRSYTzAbjjiC/arcgis/rest/services/all_patient_v2_prefecture_point_view/FeatureServer/0/query?where=name='#{prefecture_name}'&outFields=*&outSR=4327&from=20&size=20&f=json"
    uri_parse = URI.parse(uri_encode)
    uri_prefectures = Net::HTTP.get(uri_parse)
    @prefecture_info = JSON.parse(uri_prefectures)

  end
end

概要

お住まい(東京で登録されている場合)↓東京のコロナ情報を出す様にしています。
スクリーンショット 2021-01-31 14.43.20.png

作成したAPP

環境

Rails 6.1.1
ruby 2.7.2p137
Mac Big Sur 11.1

## 後書き、反省点

機能をもっと増やしたかったが、APIの精査や、herokuでのメール設定など、機能に関する開発に時間をかけられなかったので、次回はこの辺に時間を取られないようにしたい。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?