Flurl.Http
に基づく WeChat HTTP API SDK には現在、パブリック プラットフォーム、オープン プラットフォーム、マーチャント プラットフォーム、企業 WeChat、広告プラットフォーム、対話オープン プラットフォーム、その他のモジュールが含まれています。
その他の SKIT.FlurlHttpClient シリーズ開発キットについては、ここをクリックしてください。
Flurl.Http
に基づいています。System.Text.Json
(デフォルト) とNewtonsoft.Json
の 2 つのシリアル化メソッドをサポートします。名前 | NuGet | 他の |
---|---|---|
パブリックプラットフォーム(公式アカウント、ミニプログラム、動画アカウント) + オープンプラットフォームモジュール | 開発ドキュメントのサンプル プロジェクト | |
マーチャント プラットフォーム (WeChat 支払い) モジュール (v3 バージョン インターフェイス用) | 開発ドキュメントのサンプル プロジェクト | |
マーチャントプラットフォーム(WeChat決済)モジュール(v2バージョンインターフェース用) | 開発ドキュメント | |
エンタープライズ WeChat (エンタープライズ アカウント) モジュール | 開発ドキュメント | |
広告プラットフォーム (広连通) モジュール | 開発ドキュメント | |
ダイアログオープンプラットフォーム(WeChatインテリジェントダイアログ)モジュール | 開発ドキュメント | |
Tencent 零細企業決済モジュール | 開発ドキュメント |
Flurl.Http
とは何ですか? Flurl.Http
は軽量の HTTP ライブラリであり、.NET で最も人気のある拡張ライブラリの 1 つであり、NuGet での累計ダウンロード数は 1,700 万を超え、1 日の平均ダウンロード数は 6,000 を超え、GitHub のスター数は 2.6,000 です (2021 年 6 月時点のデータ統計)。 01)。
注: Shengpai WeChat SDK は、Su Zhenwei 氏によって開始された有名な国内の .NET オープン ソース プロジェクトです。
このライブラリは、API 自体のカプセル化に焦点を当てており、暗号化、復号化、シリアル化のためのいくつかのツール クラスも提供します。これは、より柔軟に使用でき、フレームワークやプロジェクトの種類に限定されません。Shengpai WeChat SDK は、大規模で包括的な機能を提供します。 、MVC / WebAPIの深い統合と互換性があります。
このライブラリのインターフェイス モデルは、Microsoft が公式に推奨する C# 属性命名法 (パスカル命名法) に従っています。Shengpai WeChat SDK は、WeChat インターフェイス自体の命名法 (スネーク型命名法とキャメル ケース命名法を組み合わせたもの) を提供します。
このライブラリは、現在 WeChat によって正式に提供されているほぼすべての API をカプセル化しています (サポートされていないごく一部の API の具体的な理由は、各モジュールのドキュメントに記載されています)。Shengpai WeChat SDK は、一般的に使用される API のみを提供します。
この点に関しては、WeChat が提供する API について不満を言う必要があります。明らかに、多くのチームが WeChat 内で共同開発を行っており、各チーム、さらには各人によって、フィールドの命名スタイル、制約、インターフェイスのルールが大きく異なります。 WeChat Pay の v3 API は「RESTful」であると主張されていますが、統一された標準はありません。
たとえば、ページングクエリを例に挙げると、フィールドはoffset 、 cursor 、 page 、 limit + data 、 total_count 、および next_cursor で構成されているように見えますが、一部のフィールドはoffset 、 cursor 、 page 、およびlimitフィールドで構成されています。インターフェイスはオプションのパラメーターで、一部のページ値は0
から始まり、一部は1
から始まります。 next_cursorフィールドは必ず返されますが、一部は返されず、一部は特定の条件下でのみ返されます。合計で 12 を超えるページング クエリ インターフェイスがありますが、この場合は 7 つまたは 8 つのページング データ構造があり、共通の基本クラスを抽象化するのは困難です。
さらに、同じものでもインターフェースによって綴りが異なります。配列によっては JSON として表現されるものもありますが、このような「奇妙な」状況も数多くあります。
このプロジェクトは、いくつかのパブリック基本クラスを可能な限り抽象化し、さまざまな奇妙なシナリオでカスタム JsonConverter をカプセル化しました。
WeChat には多くの製品ビジネス ラインがあるため、多くのビジネスではこれまでに 2,800 を超える API がカプセル化されていますが、膨大な数の API にはまだ及んでいません。ほぼ十分です。
このプロジェクトは、WeChat が提供する公式開発ドキュメントに厳密に従ってパッケージ化されており、パッケージ化結果の正確性を保証するために自動ツールが使用されています。ただし、WeChat のドキュメント自体の品質は比較的低いため、間違いは避けられません。
WeChat は API を頻繁に更新するため、公式更新ログを提供する WeChat Payment または WeChat Enterprise では、このプロジェクトは定期的に更新をチェックしますが、他のプラットフォームは静かに更新されることが多く、誰もが混乱します。インターフェイスやモデル定義が正しくないために使用中に問題が発生した場合は、お気軽に問題を提起してください。
プロジェクト名 | プロジェクト紹介 | プロジェクトアドレス |
---|---|---|
コアショップ | コアモールシステム:ビジュアルレイアウトをサポートする.NETモールシステム。 | |
管理者.NET | 巨人の肩の上に立つ .NET ユニバーサル パーミッション開発フレームワーク。 |
注: 上記のケースはすべてサードパーティから提供されたものであり、そのプロジェクトについていかなる保証もするものではなく、列挙および表示のみを目的としています。このライブラリも使用するプロジェクトがあり、それをケース リストに追加したい場合は、問題 (オープン ソースまたは非オープン ソースのいずれか) で送信できます。
上記のウェアハウスアドレスは同時に更新され、Issue または Pull Request を受け入れることができます。
貢献方法については「貢献」をご覧ください。
アップデート手順の詳細については、CHANGELOG を参照してください。