C#_使用RestSharp開發歐洲專利局資料WebApi存取應用_token概念_Postman超猛程式碼轉譯功能
EPO OPS(European Patent Office Open Patent Services)
Open Patent Services (OPS) is a web service which provides access to the EPO's data via a standardised XML interface. It does this using RESTful architecture.
歐洲專利局(EPO)
提供給開發者做專利文獻資料存取的Web API
也就是OPS
在官方有公開存取文件可做下載
首先歐洲專利局開的API存取規則十分嚴謹
會需要先有一對Key,SecretKey(帳號跟密碼)
註冊完並通過申請後會獲得
這個Key 和 SecreteKey 傳入之前必須是
以{Key}:{SecreteKey} 之間用分號隔開並經過Base64編碼後的結果
由於是採用 Basic Authorization
因此在塞入Header時候必須在前面多加 "Basic "
最終傳入Header格式
"Basic " + Base64Encode({Key}:{SecreteKey})
並在每次呼叫API時候會需要先取得Token
具有時效性(10~20分鐘就失效) 官方文件是說理論上是20分鐘的有效期限
一完整OPS api呼叫存取時序圖
中間經由EPO 的 Gateway來頒發token
有點類似你去某個園區或展覽會有買門票可能就是當天營業時間可以用的概念。
有點像是具有時效性的門票,在大陸用語可能會被稱作「令牌、通證」這種翻法是比較直觀的。
開啟POSTMAN來測試看看
預設文件有提及到要先傳入
Header部分
Content-Type 為 application/x-www-form-urlencoded
Body部分
要傳入的Key:Val
grant_type : client_credentials
Authorization部分
授權則是設定其帳號密碼
對應完成最原始發送出去的HTTP Context會是長這樣
而在postman測試完成回傳令人滿意的200 OK後
就要在把它轉成系統中要用的程式碼了
PostMan提供了一個可直接將剛剛一系列在Postman上設定參數過程
轉譯成某種程式語言(C#、NodeJs、Java、PHP、C、Python...)
比方我要用C#就在Code Snippey下拉轉換成
C#程式對應呼叫方式(在此範本中是C#搭配RestSharp->Nuget安裝完即可調用)
以上就是本次分享
Ref:
Open Patent Services RESTful WebServices Reference Guide
TOKEN 是什麼?「通證」是什麼?「ANT螞蟻通證」是什麼?
https://kknews.cc/tech/e4m9lm4.html
ASP.NET - RestSharp
https://dotblogs.com.tw/justforgood/2018/08/27/174803
POST Request using Rest Sharp
https://www.toolsqa.com/rest/post-request-using-rest-sharp/
C# RestSharp 使用
https://zhuanlan.zhihu.com/p/29338111
留言
張貼留言