マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2024.07.04

【OSS情報】WebベースAPI開発スイート「 Hoppscotch 」🌐

【OSS情報】WebベースAPI開発スイート「 Hoppscotch 」🌐

「Hoppscotch」とは

概要

Hoppscotchは、
オープンソースのAPI開発エコシステムです。

「使いやすさ」と「アクセシビリティ」を重視して構築された
軽量WebベースのAPI開発スイートです。
ミニマルで邪魔にならないUIを特徴としています。

API開発に必要なすべての機能が提供されます。

利用コスト

「Community Edition」は、
MITライセンスのもとで無料で利用でき、
個人や小規模のチームに適しています。

また、有料版も提供されています。

オフィシャルサイト

→docs.hoppscotch.io

→github.com →hoppscotch/hoppscotch

代替可能ツール

Hoppscotchは、
「Postman」や「Insomnia」の
オープンソースの代替手段として利用できます。

Postman

Postmanは、
API開発を効率化するためのツールで、
特に「RESTful APIのテストとデバッグ」に強力な機能を提供します。

「API開発のライフサイクル全体をサポートする強力なツール」として活用できます。

■多岐にわたる機能を備えています。
・HTTPリクエストの作成と送信
・リクエストのレスポンス確認
・コレクションによるリクエストの整理
・環境設定の利用
・JavaScriptによるリクエスト前後のスクリプト実行
・自動テスト
・モックサーバ設定
・APIドキュメンテーションの自動生成 など

■API開発効率化
開発者はAPIの「開発」「テスト」「デバッグ」を効率的に行えるため、
「プロジェクトの品質向上」と「開発スピードの向上」に寄与します。

■CI/CDパイプライン
「異なる環境に対する設定」や「リクエストの自動化」が容易になり、
CI/CDパイプラインにも組み込むことが可能です。

■モックサーバ
モックサーバを活用することで、
実際のAPIが完成する前に、
フロントエンドの開発やテストを進めることができます。

■ドキュメンテーション自動生成
APIドキュメンテーションは自動生成され、
チームメンバーやクライアントと簡単に共有できるため、
コミュニケーションも円滑に行えます。

→postman.com

Insomnia

Insomniaは、
「API開発とテストを効率化」するためのツールで、
特に「RESTおよびGraphQL APIのリクエスト送信とデバッグ」に
強力な機能を提供します。

■HTTPリクエスト
HTTPリクエスト(GET、POST、PUT、DELETEなど)を簡単に作成し、
送信できます。
レスポンスはリアルタイムで表示され、
「ステータスコード」「ヘッダ」「ボディ」の内容を詳細に確認可能です。

■主な特徴
・リクエストの整理
・環境変数の設定
・認証のサポート
・プラグインによるカスタマイズ
・認証機能 :「OAuth」「Bearer Token」
・コマンドラインツール
・自動化やCI/CDパイプラインへの統合
・インポート/エクスポート機能

→insomnia.rest

Hoppscotchの「エディション」

Hoppscotch Cloud

Hoppscotchは、
クラウドベースのプラットフォームであり、
ユーザーが「APIの開発とテスト」を簡単に行えるように設計されています。

「ホスティング」「スケーリング」「メンテナンス」の作業が不要で、
「API開発およびテストプラットフォーム」として、
活用できます

個人およびチーム向けに構築されており、
無料プランと有料プランがあります。

Hoppscotch Self-Host

API開発とテストの「データ所有と制御」を完全に実現するために、
Hoppscotchをセルフホストすることができ、
独自インフラストラクチャにデプロイすることが可能です。

Self-Hostオプションには、
「Community Edition」と「Enterprise Edition」の
2つのエディションがあります。

Community Edition

「Hoppscotch Community Edition」は、
MITライセンスのもとで無料で利用できる
オープンソース版です。

「個人プロジェクト」や「商用プロジェクト」の両方で使用可能であり、
特に、個人や小規模のチームに適しています。

Enterprise Edition

「Hoppscotch Enterprise Edition」は、
チームや組織向けにエンタープライズ対応機能を備えた
セルフホスト型のHoppscotch環境です。

「SAMLベースのSSO」「オンプレミス展開」「監査ログ」などの
機能が含まれています。

このエディションは、
有料で「ユーザーあたり月額19ドル」となっており、
優先サポート付きでオンプレミス展開が可能です。

Hoppscotchの「特徴」

無料かつオープンソース

Hoppscotchの「Community Edition」は、
無料かつオープンソースのAPI開発エコシステムです。

MITライセンスのもとで提供されており、
「個人利用」「商用利用」ともに無料で利用できます。

ソースコードは公開されており、
誰でも自由に「閲覧」「改変」「再配布」できます。

軽量で高速

Hoppscotchは、
軽量で高速なAPI開発スイートです。

「最小限で邪魔にならないUI」で設計されており、
快適な速度で、
「APIリクエストの送信」や「レスポンスの確認」を行うことができます。

クロスプラットフォーム

Hoppscotchはクロスプラットフォームに対応しており、
「Webブラウザ」「デスクトップアプリ」「CLI」など、
さまざまな環境で利用できます。

Webブラウザ

インストール不要で、
Webブラウザからアクセスするだけで利用できます。

→hoppscotch.io

Desktop

「Mac」「Windows」「Linux」に対応したデスクトップアプリが提供されています。

「Tauri」と「Hoppscotch Web Client」を用いて開発されており、
Webブラウザを介さずに単体で動作します。

CLI(コマンドラインインターフェース)

npmパッケージとして提供されており、
「ターミナル」や「CI/CDパイプライン」上で
Hoppscotchを実行できます。

活発なコミュニティ

Hoppscotchは、
活発なコミュニティによって支えられています。

多数のコントリビューターが開発に参加しており、
GitHub上で「issue」や「pull request」を送信できます。

translationガイドに従って、
Hoppscotchの翻訳に貢献することもできます。

Hoppscotchの「APIテスト機能」

Hoppscotchは、
API開発に必要な強力な機能を数多く備えています。

RESTful APIについて、
高速かつシームレスなテストを実施できます。

RESTful API

リクエストセクション

APIエンドポイントを定義し、
通信を開始できます。

「GET」「POST」「PUT」などの
各種HTTPメソッドから選択できます。

対象を指定することで、
リクエストに動的な動作を追加することもできます。
・ヘッダ
・リクエストボディ
・認証ヘッダ
・パラメータ
・プリリクエストスクリプト

受信したレスポンスに対して
テストを実行することもできます。

レスポンスセクション

「APIエンドポイントへのレスポンス」が表示されます。

返されたレスポンスをダウンロードしたり、
コピーしてさらに使用したりできます。

GraphQL API

Hoppscotchは、
GraphQLに対応しており、
「GraphQL API」のテストを行うことができます。

リクエストセクション

サーバエンドポイントを入力して接続を開始できます。

接続が確立されると、
クエリビルダーを使用して、
必要なデータをフェッチするためのクエリを設計し、
実行できます。

「変数」「ヘッダ」「認証」を定義することで、
クエリに動的な動作を追加することもできます。

レスポンスセクション

APIエンドポイントへのレスポンスが表示されます。

返されたレスポンスをダウンロードしたり、
コピーしてさらに使用したりできます。

Realtime API

Hoppscotchの「リアルタイムAPIプラットフォーム」を使用すると、
リアルタイムでAPIを簡単にテストできます。

リクエストセクション

サーバエンドポイントを入力して
接続を開始するための機能があります。

4つのプロトコルから選択できます。
・WebSocket
・SSE
・Socket.IO
・MQTT

レスポンスセクション

接続が確立されると、
レスポンスセクションに
レスポンスとログが表示されます

Hoppscotchの「その他の機能」

Hoppscotchは、
チームや個人でのAPI開発を容易にするためのコラボレーション機能や、
効率化機能を提供しています。

ワークスペース機能

ワークスペース機能を使用すると、
個人またはチームの
「リクエスト」「コレクション」「環境」を整理できます。

ユーザーは、
複数のワークスペースを切り替えて、
ワークフローを整理できます。

チームワークスペース

チームで作業する場合、
チームワークスペースを作成して、
すべてのリソースを1か所にまとめることができます。

個人用ワークスペース

個人で作業する場合、
または、
チームと共有したくないリソースがある場合は、
個人用ワークスペースを使用できます。

コレクション機能

コレクションを使用すると、
APIリクエストについて
「保存」「整理」「共有」できます。

ポイント

・フォルダで階層化整理 :「フォルダ」と「サブフォルダ」を含めることができる
・リクエストの一括実行
・特定リクエストの再利用

インポート/エクスポート機能

・Hoppscotch
・OpenAPI
・Postman
・ファイル
・GitHub Gist

履歴機能

履歴機能を使用すると、
以前のリクエストとレスポンスが保存され、
後からアクセスできます。

リクエストは、
送信ボタンをクリックすると自動的に履歴に保存されます。

ユースケース

・履歴からリクエストにアクセス
・リクエストをお気に入りに登録
・履歴をフィルタ
・履歴からリクエストを削除 など

スクリプト機能

Hoppscotchでは、
「リクエストを送信する前後に実行されるスクリプト」を
JavaScriptで作成できます。

プリリクエストスクリプト

「プリリクエストスクリプト」は、
「リクエストの送信前」に実行される
JavaScriptコードです。

■ユースケース
・環境変数の設定
・リクエストヘッダへのタイムスタンプ挿入
・URLパラメータへのランダムな英数字文字列の送信 など

ポストリクエストスクリプト

「ポストリクエストスクリプト」は、
「リクエストのレスポンスを受信した後」に実行される
JavaScriptコードです。

■ユースケース
・ステータスコードの確認
・レスポンスヘッダのフィルタリング
・レスポンスデータの解析
・環境変数の設定 など

環境変数機能

環境変数機能を使用すると、
リクエストやスクリプトで再利用できる変数を
無制限に作成できます。

Hoppscotchでは、
3種類の環境を使用できます。

ユースケース

・リクエストやスクリプト内で値を再利用
・プリリクエストスクリプトを通じて初期化
・GitHub Gistからエクスポート/インポート など

グローバル環境変数

グローバル環境で定義された変数は、
いつでもどのワークスペースからでもアクセスできます。

ただし、
個人用または共有ワークスペース環境で定義された変数が使用される場合、
グローバル変数よりも優先されます。

個人用環境変数

個人用環境変数は、
ユーザー個人に固有のもので、
共有ワークスペースには関連付けられていません。

ユーザーは、
個人用環境を共有ワークスペースで使用できますが、
ワークスペースのメンバーと共有することはできません。

共有環境変数

共有ワークスペースで作成されたすべての共有環境変数には、
共有ワークスペースのすべてのメンバーがアクセスできます。

共有ワークスペースごとに一意となります。

変数機能

変数は、
APIインタラクションに動的なプレースホルダーを提供します。

変数を使用すると、
値を1か所に保存し、
アプリケーション全体で再利用できます。

変数は、
二重の山括弧で囲むことで参照できます。
例:<<variableName>>

Hoppscotchは、
以下の異なる変数スコープを提供します。

グローバル変数

Hoppscotch全体でアクセスでき、
すべての変数のうち最も広いスコープを持ちます。

環境変数

本番環境やステージング環境など、
2つの環境で同じ変数セットを使用する場合に便利に活用できます。

リクエスト変数

個々のリクエストのみに
スコープが設定されます。

URLパスで変数を使用する場合や、
変数URLを埋め込む場合に有用です。

認証機能

「認証」とは、
「クライアントがリソースにアクセスする権限を保持していること」を
確認するプロセスです。

認証の詳細を
「ヘッダ」「本文」「リクエスト」のパラメータとして追加できます。

サポート認証方法

・Basic認証
・Bearerトークン
・OAuth 2.0
・OIDC など

インターセプター機能

インターセプター機能を使用すると、
「リクエストとレスポンス」を
インターセプトして変更できます。

「Proxyscotch」または「カスタムミドルウェア」を使用して、
「CORSの制限によってブロックされたAPI」にアクセスできます。

「Hoppscotch Web拡張機能」を使用して、
リクエストとレスポンスをインターセプトすることもできます。

コードスニペット機能

コードスニペット機能を使用すると、
さまざまな言語やフレームワークで、
「APIのコードスニペット」を生成できます。

生成されたコードスニペットは、
クリップボードにコピーできます。

さまざまな言語をサポート

・Shell
・JavaScript
・Node
・C
・Java
・PHP
・Objective-C
・Swift
・Python
・Ruby
・C#
・Go
・OCaml など

カスタマイズ機能

Hoppscotchでは、
さまざまなカスタマイズが可能です。

背景色

・システム ※デフォルト
・ライト
・ダーク
・ブラック

アクセントカラー

・グリーン
・ティール(青緑色)
・ブルー
・インディゴ ※デフォルト
・パープル
・イエロー
・オレンジ
・レッド
・ピンク

ナビゲーションの展開

サイドパネルを展開して、
「ラベル付きのナビゲーションメニュー」を表示できます。

サイドバーの位置

サイドパネルを、
画面の左側または右側に配置できます。

【お知らせ】「マジセミ」のご紹介

「マジセミ」では、日々、多くのIT関連セミナーを開催しています。

多くのセミナーの中から「ご自身のスキルやビジネスを強化できるセミナー」を見つけて、
ぜひ1度、ご参加ください。

マジセミのイメージロゴ

マジセミ関連プラットフォーム

プラットフォーム 説明 URL
マジセミ マジセミで実施されるさまざまなセミナーの開催情報を確認できます。
「IT関連セミナー」「製造業関連セミナー」など、ご自身のビジネスを強化できるセミナーを検索できます。
→majisemi.com
マジセミサービス 「セミナーを開催したい方」向けの情報を確認できます。
トライアルからの利用が可能です。
→majisemi.com →service
YouTubeマジセミ動画①
IT製造業DX
「マジセミ」で開催している年間1000回のウェビナーの中から、「IT業界と製造業DX」の最新トレンドをサマリー動画でお届けします。 →youtube.com
→@majisemi
YouTubeマジセミ動画②
ITセキュリティ
ITセキュリティの最新トレンドに関するものを集めてサマリー動画でお届けしています。 →youtube.com
→@majisemisecurity
マジセミドライブ 「AIツール実験室」などの、IT関連コンテンツを紹介しています。 →majisemi.com
→topics
マジセミFacebook 毎日「マジセミ関連情報」や「IT関連ニュース」などを紹介しています。 →facebook.com
→OSSNews
マジセミX(Twitter) マジセミFacebookと同様に投稿しています。 →twitter.com
→Majisemi_it
マジセミInstagram マジセミFacebookと同様に投稿しています。 →instagram.com
→majisemi_it/
マジセミThreads マジセミFacebookと同様に投稿しています。 →threads.net
→@majisemi_it
マジセミBluesky マジセミFacebookと同様に投稿しています。 →majisemi.bsky.social

おすすめの記事

【デジタル寺田の3分用語解説】「 SAP 2027問題 」とは?⏳

デジタル寺田の3分用語解説

2024.10.07

【デジタル寺田の3分用語解説】「 SAP 2027問題 」とは?⏳

「 SAP 2027問題 」とは、「SAP ERP 6.0」が2027年末でサポート終了する問題です。セキュリティリスクを避けるため、早期に新システムへの移行が必要です。移行は業務プロセスの見直し、効率化のチャンスにもなります。新しい技術を積極的に導入し、挑戦していくことが成功の鍵となります。

【デジタル寺田の3分用語解説】「 人的資本経営 」とは?🧑‍💼

デジタル寺田の3分用語解説

2024.10.08

【デジタル寺田の3分用語解説】「 人的資本経営 」とは?🧑‍💼

「 人的資本経営 」は、企業が従業員のスキルや経験、意欲を高めるために投資を行い、長期的な企業価値の向上を目指す経営手法です。本記事では、人的資本経営の意義やその具体的な取り組みについて分かりやすく解説します。

【デジタル寺田の3分用語解説】「 ASM 」とは?🧩

デジタル寺田の3分用語解説

2024.10.07

【デジタル寺田の3分用語解説】「 ASM 」とは?🧩

「 ASM 」(アタックサーフェースマネジメント)は、システムに存在する脆弱性や攻撃の入り口を可視化し、管理することでリスクを特定し、対策を講じる手法です。攻撃者がシステムに侵入するために利用できる潜在的な脆弱性を理解し、適切な対策を取ることが、セキュリティ対策の第一歩となります。