国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

深度“盤”一下Eolink這款免費API協作平臺

jf_ro2CN3Fa ? 來源:芋道源碼 ? 作者:芋道源碼 ? 2022-12-15 14:59 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

寫代碼,哪個程序員都不害怕。

寫文檔,哪個程序員都害怕!

為什么?

還不是因為 API 工具不好使,不便捷,同步麻煩,測試看不懂……

最近調研了身邊一些開發團隊,發現他們列舉的工具中,都出現過同一款工具——Eolink。

今天這次我們深度“盤”一下 Eolink 這款免費 API 協作平臺,圍繞【智能生成+盤活 API 資產】這一功能上,到底投入了多大的開發成本,給我們帶來了多少驚喜!

快速體驗:https://www.eolink.com/?utm_source=w5104

本文重點圍繞以下產研需求展開(文末有福利)。

  1. 當 API 代碼更新之后,API 文檔自動刷新;

  2. API 協作工具通過腳本進行自動刷新/同步;

  3. 基于 API 文檔智能生成請求代碼和業務代碼;

當然在正式開始對接 Eolink 前,咱需要先使用 Python Flask 框架在本地構建一個微型項目,用于寫接口代碼。

閱讀完這篇,你不但可以編寫公司標準的 Python API 文檔,還順便掌握了 Swagger 與 Eolink 的對接,一舉多得,一文多獲。

一、Eolink 準備工作,Python 快速搭建 Swagger

我選用的 Web API 框架 Flask,所以搭建 Swagger 需要用到 Flasgger 模塊,如果你用 FastAPI,可以不用多走這一步,直接使用 FastAPI 原生 API 文檔即可。

使用 Flasgger 得到一個 Swagger UI 具體步驟,不做重點描述,咱們的目標是打通 SwaggerEolink,讓 API 研發資產可以盤活,Swagger 簡易部署流程請參考下述步驟。

首先安裝 flasgger 模塊。

pipinstallflasgger

然后新建 main.py 文件,同時輸入如下代碼(本地 Python 版本為 3.8),代碼有點長,可以跳過閱讀,直接復制代碼到本地相應文件中

fromflaskimportFlask
fromflasggerimportSwagger

app=Flask(__name__)
swagger=Swagger(app)


@app.route('/eolink_user_add/',methods=['POST'])
defeolink_user(user):
"""
添加用戶
---
tags:
-用戶相關接口
description:
用戶注冊接口,json格式
parameters:
-name:body
in:body
required:true
schema:
id:添加用戶
required:
-username
-password
properties:
username:
type:string
description:用戶名
password:
type:string
description:密碼
phone:
type:string
description:手機號
wx:
type:string
description:微信

responses:
201:
description:注冊成功


example:{'code':1,'message':注冊成功}
406:
description:注冊失敗
"""
pass


@app.route('/eolink_opts/')
defeolink_opts(t):
"""
Eolink功能描述
---
tags:
-第一個測試接口
description:
傳入大類,返回清單
parameters:
-m_type:number
in:number
type:string
enum:['eolink','eolink1','eolink2','eolink3']
required:false
default:eolink
responses:
200:
description:功能清單
examples:{'eolink':['一站式API生產力工具','超強的API管理','超方便的API測試']}
"""
all_eolink_opts={
'eolink1':['API文檔與研發管理','API監控和異常告警','API快速測試與自動化測試','API微服務網關'],
'eolink2':['支持所有主流協議','代碼自動生成API文檔','API文檔自動生成代碼','API版本管理','API變更通知'],
'eolink3':['支持在線、本地、客戶端進行測試','一鍵進行回歸/冒煙測試','快速創建測試用例','自動生成測試數據','豐富詳細的測試報告']
}
ift=='eolink':
result=all_eolink_opts
else:
result={'eolink':all_eolink_opts.get(t)}

returnresult


@app.route('/',methods=['GET'])
defhello():
return"helloworld!"


if__name__=='__main__':
app.run()

使用 python main.py 運行 Flask 項目,然后訪問 http://127.0.0.1:5000/apidocs/在瀏覽器得到如下視圖,如果此時你獲得界面與我一直,那么恭喜你,準備工作已經完成,后續我們需要對上述代碼進行修改,目的是在 Eolink 每次 自動生成 API 文檔 之后,對比差異。

作為一名合格的軟件研發工程師,在公司團隊協作開發的時候,一定要遵守團隊 API 文檔規范,邊寫代碼,邊寫注釋,邊寫文檔。

34d4cd3a-7c3d-11ed-8abf-dac502259ad0.png

在上述界面中,找到 appispec_1.json 超鏈接位置,點擊該鏈接,頁面跳轉到 Swagger 生成的 JSON 文件地址,如下所示。

http://127.0.0.1:5000/apispec_1.json

在瀏覽器中直接打開該 URL 地址,得到如下 JSON 格式的數據,下圖為部分內容展示。

34ec44ec-7c3d-11ed-8abf-dac502259ad0.png

二、Eolink 通過 Swagger 文件,自動生成 API 文檔

在前文拿到 JSON 文件地址后,就可以在 Eolink API 研發管理平臺讀取該網絡文件,并自動生成API文檔頁面了,具體操作如下。

進入 API 管理控制臺具體項目中左側菜單欄找到【其它】,然后選擇【API文檔生成】。

可按下述動圖進行操作。

34fa79cc-7c3d-11ed-8abf-dac502259ad0.gif

進入到 【自動生成API文檔】功能頁之后,選擇【添加來源】按鈕。

35117550-7c3d-11ed-8abf-dac502259ad0.png

在彈窗中選擇通過 Swagger URL 生成 API 文檔,點擊下一步:

352520fa-7c3d-11ed-8abf-dac502259ad0.png

【添加來源】彈窗輸入 Swagger 生成的 JSON 文件地址,就是剛剛得到的 JSON 文件地址,這里一定要注意,該地址能通過外網訪問(因為 Eolink 服務器不能調用我們本地的數據),并且為 JSON 格式(剛剛已經核對過目標數據),然后參考下圖進行填寫。

上傳前文獲取的 JSON 文件到臨時服務器,修改 Swagger.json 文件地址,點擊確定,完成配置。

互聯網公司項目,文檔一般是支持外網訪問的,這個問題只會在我們學習階段碰到。

3537298a-7c3d-11ed-8abf-dac502259ad0.png

注意:上圖右側【完善配置】所有數據保持默認即可。

點擊確定,完成來源配置,配置頁面自動關閉,出現如下列表。

355e10b8-7c3d-11ed-8abf-dac502259ad0.png

點擊同步按鈕,將 Swagger 文件內容同步到 Eolink 中。

356ed70e-7c3d-11ed-8abf-dac502259ad0.png

再次切換到 API 列表頁面,可以看到 API 同步之后的效果。

358e01ce-7c3d-11ed-8abf-dac502259ad0.png

此時打開 任意API 文檔,可以查看到 API 描述,請求地址,請求參數,返回參數等其它信息,到這里 Eolink 已經成功進行同步。

如果我們 JSON 文件發生了任意修改,例如【添加用戶接口】新增加一個 “年齡" 參數,此時只需要點擊上文提及的同步按鈕,即可更新 Eolink 平臺 API 詳細數據。

這里咱們需要做一個小小的總結,在公司團隊協作的場景下,經常出現文檔和代碼不同步情況,所以我們引入了 Swagger 模塊,讓小組中的程序員,在編寫代碼的同時,只需要更新自己的代碼和注釋,即可自動生成 API 文檔。

但 Swagger 只是一個用于生成、描述和調用 RESTful 接口的 Web 服務,它遠遠無法滿足團隊中對于API 的所有訴求,而 Eolink 在軟件研發整個生命周期中,做了全方位的補充,從而 盤活 API 研發資產。

除了手動點擊【同步】操作外,我們還可以通過 Open API 實現自動同步。

三、Eolink 通過 Open API 觸發同步操作

本篇博客中使用的是 Open API V2 版本,在正式編寫代碼前,需要先在工作空間管理后臺獲取調用密鑰。

密鑰配置

點擊在管理后臺右上角頭像位置的【賬號設置】,進入工作空間設置菜單。

切換的頁面中,選擇 【Open API】,進入密鑰配置。

35a1231c-7c3d-11ed-8abf-dac502259ad0.png

為了數據安全,請不要將密鑰泄露。點擊上圖箭頭指向位置,查看密鑰明細,直接點擊即可復制。

解析來我們查看一下 通過 Open API 觸發同步操作的請求說明。

  • 請求協議:HTTPS

  • 請求方式:GET

  • 請求地址:https://api.eolink.com/v2/api_studio/management/api/auto_scan

  • 請求參數:

    • eo_secret_key:open api 的訪問鑒權密鑰,前文剛剛復制的字符串。
    • project_id:當前項目的ID,在【自動生成API文檔】頁面已經自動填充。
    • space_id:工作空間ID,同樣為 Eolink 自動生成內容。
  • 請求響應

    • 數據請求成功,返回 JSON 格式數據,{"status":"success"}

有了這些標準之后,我們可以快速通過 Python 編寫一個自動觸發同步操作的腳本,代碼如下。

importrequests

url="https://api.eolink.com/v2/api_studio/【其余內容請在API文檔生成頁面復制】"

res=requests.get(url)

print(res.text)

在運行代碼前,先對前文的 Python Flask 接口代碼進行一下修改,增加【用戶來源】字段。然后使用上面的 3 行代碼,即可實現自動化同步。上述代碼運行結果如下所示。

{"type":"api","status":"success"}

閱讀到這里,我們已經實現了【通過 Open API 觸發同步操作】,你可以將代碼部署到云服務器,并設置成自動任務,這樣 Eolink 就可以實時的抓取服務端 API 文檔,解放你的雙手了。

四、Eolink 基于 IDEA 插件上傳 API

Eolink 除了手動同步和以Open API 形式同步文檔以外,還可以通過 IDEA 插件實現快速在研發工具上操作并上傳API接口文檔,而且比Swagger的方式還快,具體步驟如下所示。

打開 IDEA 插件,再插件市場搜索 Eolink ApiKit。

35c1c31a-7c3d-11ed-8abf-dac502259ad0.png

點擊上圖的 Install 即可安裝。

接下來就需要對該插件進行配置,參照下圖找到 Eolink Settings。

35d97cbc-7c3d-11ed-8abf-dac502259ad0.png

看一下 Eolink Settings 中的相關參數配置。

  1. Server:這里使用域名+/api 格式,例如這里是 https://space-e87yzg.w.eolink.com/api;

  2. SpaceKey:空間Key,復制上述域名中的Key即可,space-e87yzg;

  3. ProjectHashKey:前文 Open API 中用到的 密鑰

  4. Token:你的賬號;

  5. StringType:選擇第一項即可。

然后在你的項目源碼空白處,點擊樹表右鍵,選擇 Generate Class Doc,一鍵生成全部 API 注釋文檔。

35fa04d2-7c3d-11ed-8abf-dac502259ad0.png

生成完畢,再次選擇 Upload All Api 即可上傳所有 API 注釋到目標服務器,真正的一鍵生成文檔,一鍵上傳文檔,如果你恰好使用的是 IDEA ,一定要嘗試一下該方式,在 Eolink 的幫助下,寫文檔會變成一件非常輕松的事。

五、基于 Eolink API 文檔智能生成請求代碼和業務代碼

前文我們做的所有工作,都是為了讓現有 API 文檔快速生成并同步到 Eolink 中,只有這樣,我們才能體驗 Eolink 這個一站式 API 生產力工具,盤活 API 研發資產時的強大。

下面將借助剛剛建立的接口,為大家展示 Eolink API 智能生成請求代碼和業務代碼這一重點功能,過程中還將為大家介紹 Eolink 的一些小細節亮點。

API 文檔同步到 Eolink,一切才剛剛開始!

選擇進入前文同步的任意接口中,可以得到該接口的詳細描述,更多內容可在你的 Eolink 后臺查看,這里僅展示局部。

361882cc-7c3d-11ed-8abf-dac502259ad0.png

如果你善于發現,一定會發現一個非常不起眼的按鈕 ---【生成預覽數據】,點擊它。這個操作非常適合測試工程師進行數據模擬,尤其是當 API 接口包含大量參數待填寫時,可以大幅度節約手寫參數的消耗時間,而且測試的時候,可以避免使用 abc,aaa,1111,123,這些 “左手亂敲” 的輸入數據。

3639dc9c-7c3d-11ed-8abf-dac502259ad0.gif

然后我們再看一個強大的功能,生成請求代碼和業務代碼,你可以借助 Eolink 生成指定 API 的語言調用代碼,操作非常便捷,只需要點擊API文檔詳情頁右上角 “代碼示例” 圖標即可。

368b5b62-7c3d-11ed-8abf-dac502259ad0.png

在彈出的抽屜頁中,可以選擇你需要的代碼示例,這里依據實戰應用場景進行選擇,例如我需要的是 NodeJS 代碼,選擇對應語言類型之后,可以得到下圖所示內容,下載腳本即可用于請求代碼和業務代碼。

369d2202-7c3d-11ed-8abf-dac502259ad0.png

最后,我們在補充一個 Eolink 的亮點功能,Eolink 可以直接發起 API 測試,并且可以在接口前后增加 前置腳本后置腳本,二者的原理是在 API 執行前/后 執行 Javascript 腳本,從而改變請求參數或者進行簽名加密等操作。

這部分內置變量和內置函數,學習和使用時可以參考 Eolink 手冊,點擊閱讀。

使用方式非常簡單,給大家羅列幾個 HTTP 請求相關的函數,如下所示。

//輸出信息
eo.info("輸出自定義信息");

//設置http協議url,比如/user/login/admin?user_name={{name}}
eo.http.url.set("http://www.baidu.com");

//MD5加密
eo.crypt.md5(data)

上述內置函數,搭配上 Eolink 的 API 自動化測試,可以最大限度的擴展自動化測試需求,真正實現了一鍵發起測試,一鍵進行 API 回歸測試。

六、總結

本篇博客,我們從 Eolink 與 Python Flask Swagger 文件打通開始,為大家介紹了兩種 Eolink 同步API 文檔的方法,實戰中還是建議大家在服務器端部署 Open API 同步腳本,自動化實現 Swagger 和 Eolink 同步。

在同步的時候,我們可以進行更加詳細的配置,擴展如下。

  • 數據同步方式:增量更新、全量更新、僅添加新API時更新;

  • 同步接口唯一標識:可選 接口標識,接口地址和請求方式,接口名稱;

  • 新生成 API 文檔狀態設置:已發布,設計,待定,開發,測試等;

  • 將發生變更的 API 文檔狀態設置為:已發布,設計,待定等;

  • 將新生成 API 文檔歸到指定分組:可選API 分組目錄。

Eolink 增加了非常詳細的同步配置,多方面完善API文檔更新細節。

除了API同步外,本文還給大家介紹了 Eolink 的幾個亮點功能,例如自動生成預覽數據,快速生成請求代碼和業務代碼,前置后置腳本添加。

審核編輯 :李倩


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • API
    API
    +關注

    關注

    2

    文章

    2370

    瀏覽量

    66758
  • 工具
    +關注

    關注

    4

    文章

    317

    瀏覽量

    28868

原文標題:老油條用什么工具寫文檔?

文章出處:【微信號:芋道源碼,微信公眾號:芋道源碼】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    施耐德平臺商品詳情API接口技術指南

    定義、請求參數、響應處理及代碼示例,幫助您快速上手。本文基于API設計原則,確保內容真實可靠。 1. API概述 施耐德平臺的商品詳情API
    的頭像 發表于 02-26 17:16 ?64次閱讀
    施耐德<b class='flag-5'>平臺</b>商品詳情<b class='flag-5'>API</b>接口技術指南

    利用施耐德平臺API獲取設備列表數據

    提供的API接口,實現設備列表數據的搜索與獲取。 API 接口概述 施耐德平臺(如 EcoStruxure? 平臺或其子
    的頭像 發表于 02-26 17:12 ?62次閱讀
    利用施耐德<b class='flag-5'>平臺</b><b class='flag-5'>API</b>獲取設備列表數據

    如何從Target平臺獲取搜索列表數據的API接口

    ? ? 在現代Web開發中,API(應用程序接口)是實現平臺數據交互的核心工具。本文將以Target平臺為例,詳細介紹如何通過其API接口獲取搜索列表數據。Target
    的頭像 發表于 02-03 17:49 ?101次閱讀
    如何從Target<b class='flag-5'>平臺</b>獲取搜索列表數據的<b class='flag-5'>API</b>接口

    如何通過API接口獲取Target平臺的目標詳情數據

    ? ?在現代軟件開發中,API(應用程序編程接口)是連接不同系統和服務的關鍵橋梁。Target平臺(這里指代個通用平臺,如社交媒體、電商或數據服務)通常提供
    的頭像 發表于 02-03 17:43 ?119次閱讀
    如何通過<b class='flag-5'>API</b>接口獲取Target<b class='flag-5'>平臺</b>的目標詳情數據

    亞馬遜平臺 API:解鎖電商潛能的技術鑰匙

    ? 亞馬遜作為全球領先的電商平臺,其龐大的生態系統為開發者提供了豐富的編程接口(API)。這些 API 是開發者與亞馬遜平臺進行數據交互、實現自動化操作的核心工具。理解并合理運用這些
    的頭像 發表于 11-24 15:39 ?395次閱讀
    亞馬遜<b class='flag-5'>平臺</b> <b class='flag-5'>API</b>:解鎖電商潛能的技術鑰匙

    淘寶平臺 API 的功能及應用場景

    到營銷推廣、物流跟蹤等電商運營的核心環節。下面我們將深入探討淘寶平臺 API 的主要功能模塊及其典型的應用場景。 、 核心功能模塊 商品 API 功能: 提供對商品信息的增、刪、改、
    的頭像 發表于 11-24 15:23 ?418次閱讀
    淘寶<b class='flag-5'>平臺</b> <b class='flag-5'>API</b> 的功能及應用場景

    愛回收平臺價格查詢API接口詳解

    ? 在愛回收平臺上,用戶經常需要根據品牌ID和項目ID查詢相關商品或服務的價格。為此,平臺提供了個簡潔高效的API接口,幫助開發者或第三方應用實現自動化價格查詢。本文將詳細介紹這個
    的頭像 發表于 11-19 14:57 ?569次閱讀
    愛回收<b class='flag-5'>平臺</b>價格查詢<b class='flag-5'>API</b>接口詳解

    如何通過API獲取1688平臺商品詳情

    獲取商品詳情,包括API概述、訪問方法、請求示例和代碼實現。 1. API概述 1688平臺提供了系列開放API接口,允許開發者獲取商品信
    的頭像 發表于 11-11 14:00 ?1160次閱讀
    如何通過<b class='flag-5'>API</b>獲取1688<b class='flag-5'>平臺</b>商品詳情

    淘寶平臺獲取商品視頻 API 接口技術指南

    ? ?本文將詳細介紹如何通過淘寶開放平臺API 接口獲取商品的視頻信息。淘寶作為大型電商平臺,提供了豐富的 API 服務,允許開發者訪問商品數據,包括視頻內容。獲取商品視頻的
    的頭像 發表于 11-07 14:01 ?498次閱讀
    淘寶<b class='flag-5'>平臺</b>獲取商品視頻 <b class='flag-5'>API</b> 接口技術指南

    工業數據采集網關的API接口能夠對接哪些平臺系統

    “工業數據采集網關作為打通工業設備與上層系統的‘數據橋梁’,其API接口的兼容性直接決定了工業數據價值挖掘的廣度與深度。”基于這核心定位,工業數據采集網關的API接口能夠靈活對接多類
    的頭像 發表于 09-17 11:05 ?683次閱讀
    工業數據采集網關的<b class='flag-5'>API</b>接口能夠對接哪些<b class='flag-5'>平臺</b>系統

    借助電商 API,多平臺客戶評價鍵抓取

    出錯。借助電商平臺API(Application Programming Interface),我們可以實現鍵抓取多平臺客戶評價,高效自動化這
    的頭像 發表于 08-11 14:49 ?758次閱讀

    產品架與刪除API接口

    ? 在現代電子商務和產品管理系統中,API接口是實現高效操作的核心工具。產品架與刪除API接口允許管理員或系統通過編程方式管理產品狀態,確保數據致性和安全性。本文將逐步介紹這兩個
    的頭像 發表于 07-25 14:15 ?509次閱讀
    產品<b class='flag-5'>下</b>架與刪除<b class='flag-5'>API</b>接口

    3Dfindit 的協作功能

    專有部件庫。 []()促進團隊協作 單點登錄(SSO)使設計人員只需點擊一下即可訪問 COLLABORATION 3Dfindit 。公司可隨時快速、輕松地添加或刪除團隊成員。關鍵績效指標(KPI
    發表于 06-09 14:35

    集成API設計+測試+文檔管理,全新站式解決方案SmartBear API Hub功能介紹

    SmartBear全新推出API Hub,助力高效應對API開發挑戰! API Hub專為API開發者、架構師、產品經理和QA團隊打造,將設計、測試、治理和文檔集成到
    的頭像 發表于 04-08 17:52 ?856次閱讀
    集成<b class='flag-5'>API</b>設計+測試+文檔管理,全新<b class='flag-5'>一</b>站式解決方案SmartBear <b class='flag-5'>API</b> Hub功能介紹

    請問STM32cubeProgrammer是否有提供API用于設計定制化的升級軟件?

    的應用。其實也可以理解為這款應用是對STM32cubeProgrammer的個模仿,只不過GUI界面是定制為我們公司的。 所以我想問一下STM32cubeProgrammer是否有提供
    發表于 03-07 07:27