ホームページ バックエンド開発 Golang Beego で Swagger を使用し、Postman と組み合わせて API テストを行う

Beego で Swagger を使用し、Postman と組み合わせて API テストを行う

Jun 22, 2023 am 11:02 AM
postman swagger beego

Beego は、Go 言語 Web アプリケーションを迅速に開発するための Web フレームワークであり、開発プロセスを簡素化するための多くの機能とツールを提供します。これらの機能とツールには、Swagger (API ドキュメント生成ツール) と Postman (API テスト ツール) のサポートが含まれており、どちらも開発者が API を簡単に管理およびテストできるようにします。この記事では、Beego で Swagger を使用し、Postman のパフォーマンスを組み合わせる方法を紹介します。 APIのテスト。

1. Swagger のインストール

Swagger は、RESTful Web サービスを設計、構築、文書化、テストするためのオープンソース フレームワークです。 Swagger を使用すると、動的に生成された API ドキュメントで各 API メソッドのリクエストとレスポンスを表示できます。

まず、Swagger をインストールする必要があります。次のコマンドを入力します:

go get -u github.com/swaggo/swag/cmd/swag

インストールが完了したら、次のコマンドを再度入力します:

swag init

これにより、Beego アプリケーションのルート ディレクトリに、生成された Swagger ドキュメントを含む docs フォルダーが生成されます。

2. Swagger を Beego に統合する

次に、Swagger を Beego に統合する必要があります。これを行うには、main.go ファイルに swagger と beego/context の依存関係を導入する必要があります。

import(

"github.com/astaxie/beego"
"github.com/astaxie/beego/context"
_ "your-app-doc-path/docs"
ログイン後にコピー

)

次に、main.go ファイルの init() 関数に次のコードを追加します。

func main( ) {

if beego.BConfig.RunMode == beego.DEV {
    beego.BConfig.WebConfig.DirectoryIndex = true
    beego.BConfig.WebConfig.StaticDir["/swagger"] = "swagger"
    // 添加路由,可以自定义,这里设置为/swagger
    beego.InsertFilter("/*", beego.BeforeRouter, func(ctx *context.Context) {
        ctx.Output.Header("Access-Control-Allow-Origin", "*")
        ctx.Output.Header("Access-Control-Allow-Headers", "Content-Type,Token")
        ctx.Output.Header("Access-Control-Allow-Methods", "POST,GET")
    })
}

// 注册Swagger路由
beego.BConfig.WebConfig.StaticDir["/docs"] = "docs"
beego.BeeApp.Handlers.Get("/docs/*", func(ctx *context.Context) {
    ctx.Output.Header("Content-Type", "text/html;charset=utf-8")
    ctx.Output.Body(swaggerFiles.Index)
})
ログイン後にコピー

}

このコードは、Swagger UI ファイルを保存するために、アプリケーションのルート ディレクトリに Swagger フォルダーを作成します。 Beego が初期化されると、Swagger UI ディレクトリが静的ルートとして登録されます。 Swagger UI は静的な HTML、CSS、および JavaScript ファイルのセットであるため、これらのファイルには静的なリソース ディレクトリからアクセスします。

次の URL を入力して、ブラウザで Swagger UI を開く必要があります:

http://localhost:[port]/docs/index.html

ここでは、 [port] をサーバーのポート番号に置き換えてください。

3. Swagger コメントを書く

Swagger を統合したら、API の Swagger コメントを書く必要があります。これは次の方法で実行できます。

まず、ファイル swagger.go を作成し、次のコードを追加します。

packagecontrollers

/* Operation category
*/

// swagger:parameters add sub
type オペランド struct {

// The first operand
// in: path
// required: true
A int `json:"a"`
// The second operand
// in: path
// required: true
B int `json:"b"`
ログイン後にコピー

}

/* 戻り値
*/

/ / swagger:response OperResult
type OperandsResultWrapper struct {

// in:body
Body struct {
    // 运算结果
    Result int `json:"result,omitempty"`
}
ログイン後にコピー

}

/ Add/

// swagger:route GET /add /{a}/{b} add
//
// 追加用
//
// サポートされる述語: GET
// パラメーター:
// A: (パス) - 最初のオペランド (整数のみ)
// B: (パス) - 2 番目のオペランド (整数のみ)
// 受け入れられるコンテンツ:
// 生成されます:
// 結果を返す (application/json)
// エラー (application/json)
//
// swagger:parameters add
// swagger:response OperResult
func (o *OperationController) Add() {

// ...
ログイン後にコピー

}

ここでは、API リクエストとレスポンスを記述するために Swagger アノテーションを定義します。注釈は、Swagger 構文を使用して、ルーティング ルール、コマンド パラメーター、および結果の型を記述します。具体的には:

  • 操作カテゴリ (パラメータ タイプ) は、API に渡されるパラメータを記述します。
  • 戻り結果 (応答タイプ) は、API によってクライアントに返される値の形式を記述します。

4. API をテストする

これで、Beego アプリケーションは Swagger を使用できるようになり、適切な Swagger アノテーションが追加されました。次に、Postman を使用して API をテストできます。

Postman で、API URL アドレスと必要なパラメーターを入力し、GET 動詞を選択します。その後、swagger_generated_api_test.go ファイル内のテストのような一連のテストを使用して、API が適切に動作していることを確認できるようになります。

5. 概要

この記事では、Beego で Swagger を使用し、API テストのために Postman と組み合わせる方法を紹介しました。最初に Swagger のインストール方法を紹介し、次に Swagger を Beego に統合する方法を示しました。次に、Swagger アノテーションを記述し、API テストに Postman を使用する方法を示しました。これらの手順は、Beego を使用して RESTful Web API を開発する開発者にとって非常に重要です。これにより、開発者は高品質の Web アプリケーションの開発とテストをより迅速かつ簡単に行うことができます。

以上がBeego で Swagger を使用し、Postman と組み合わせて API テストを行うの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP で Swagger を使用して API ドキュメントを生成する方法 PHP で Swagger を使用して API ドキュメントを生成する方法 Jun 17, 2023 am 10:40 AM

Web アプリケーションの継続的な開発に伴い、API は最新の Web アプリケーション開発の標準の 1 つになりました。ただし、API の数と複雑さが増加するにつれて、API の保守と文書化はますます複雑になります。この問題を解決するために、Swagger が誕生しました。これは API ドキュメントを生成するためのツールであり、開発者が API の保守とドキュメント化を容易にすると同時に、視覚的なドキュメントやその他のさまざまな機能も提供します。この記事では、PHP で Swagger を使用して、

Laravel 開発: Laravel Swagger を使用して API ドキュメントを生成するにはどうすればよいですか? Laravel 開発: Laravel Swagger を使用して API ドキュメントを生成するにはどうすればよいですか? Jun 13, 2023 am 09:35 AM

Laravel 開発: LaravelSwagger を使用して API ドキュメントを生成する方法? Web アプリケーションを開発する場合、API ドキュメントの処理は面倒ですが不可欠な作業となることがよくあります。 Swagger を使用して、API ドキュメントを自動的に生成および視覚化します。 Laravel 開発では、LaravelSwagger 拡張パッケージを使用して SwaggerAPI ドキュメントを簡単に生成できます。この記事ではLの使い方について説明します。

Prometheus と Grafana を使用して Beego で監視と警報を実装する Prometheus と Grafana を使用して Beego で監視と警報を実装する Jun 22, 2023 am 09:06 AM

クラウド コンピューティングとマイクロサービスの台頭により、アプリケーションの複雑さは増大しています。したがって、監視と診断は重要な開発タスクの 1 つになります。この点に関して、Prometheus と Grafana は、開発者がアプリケーションをより適切に監視および分析できるようにする 2 つの人気のあるオープンソース監視および視覚化ツールです。この記事では、Prometheus と Grafana を使用して、Beego フレームワークに監視と警報を実装する方法を説明します。 1. はじめに Beego は、オープンソースの高速開発 Web アプリケーションです。

Flask-RESTful と Swagger: Python Web アプリケーションで RESTful API を構築するためのベスト プラクティス (パート 2) Flask-RESTful と Swagger: Python Web アプリケーションで RESTful API を構築するためのベスト プラクティス (パート 2) Jun 17, 2023 am 10:39 AM

Flask-RESTful と Swagger: Python Web アプリケーションで RESTful API を構築するためのベスト プラクティス (パート 2) 前回の記事では、Flask-RESTful と Swagger を使用して RESTful API を構築するためのベスト プラクティスについて説明しました。 Flask-RESTful フレームワークの基本を紹介し、Swagger を使用して RESTful API のドキュメントを構築する方法を示しました。本

Google Analytics を使用して Beego の Web サイトデータをカウントする Google Analytics を使用して Beego の Web サイトデータをカウントする Jun 22, 2023 am 09:19 AM

インターネットの急速な発展に伴い、Web アプリケーションの使用がますます一般的になり、Web アプリケーションの使用状況をどのように監視および分析するかが開発者や Web サイト運営者の焦点になっています。 Google Analytics は、Web サイト訪問者の行動を追跡および分析できる強力な Web サイト分析ツールです。この記事では、Beego で Google Analytics を使用して Web サイトのデータを収集する方法を紹介します。 1. Google Analytics アカウントを登録するには、まず次のことを行う必要があります。

Beego でのエラー処理 - アプリケーションのクラッシュを防ぐ Beego でのエラー処理 - アプリケーションのクラッシュを防ぐ Jun 22, 2023 am 11:50 AM

Beego フレームワークでは、エラー処理は非常に重要な部分です。アプリケーションに正しく完全なエラー処理メカニズムが備わっていないと、アプリケーションがクラッシュしたり、正しく実行されなくなる可能性があり、これはプロジェクトとユーザーの両方にとって重要です。非常に深刻な問題。 Beego フレームワークは、これらの問題を回避し、コードをより堅牢で保守しやすくするのに役立つ一連のメカニズムを提供します。この記事では、Beego フレームワークのエラー処理メカニズムを紹介し、それらがエラーの回避にどのように役立つかについて説明します。

テクノロジーの世界を探索できる、厳選された 5 つの Go 言語オープンソース プロジェクト テクノロジーの世界を探索できる、厳選された 5 つの Go 言語オープンソース プロジェクト Jan 30, 2024 am 09:08 AM

今日の急速な技術発展の時代では、雨後の筍のようにプログラミング言語が出現しています。多くの注目を集めている言語の 1 つは Go 言語です。Go 言語は、そのシンプルさ、効率性、同時実行の安全性などの機能により多くの開発者に愛されています。 Go 言語は、多くの優れたオープンソース プロジェクトがある強力なエコシステムで知られています。この記事では、厳選された 5 つの Go 言語オープンソース プロジェクトを紹介し、読者を Go 言語オープンソース プロジェクトの世界へ導きます。 KubernetesKubernetes は、自動化されたオープンソースのコンテナ オーケストレーション エンジンです。

Beego での分散調整と管理のための ZooKeeper と Curator の使用 Beego での分散調整と管理のための ZooKeeper と Curator の使用 Jun 22, 2023 pm 09:27 PM

インターネットの急速な発展に伴い、分散システムは多くの企業や組織のインフラストラクチャの 1 つになりました。分散システムが適切に機能するには、調整して管理する必要があります。この点で、ZooKeeper と Curator は使用する価値のある 2 つのツールです。 ZooKeeper は、クラスター内のノード間のステータスとデータを調整するのに役立つ、非常に人気のある分散調整サービスです。 Curator は ZooKeeper のカプセル化です

See all articles