วิธีเริ่มต้นใช้งาน API - พื้นฐาน 01

This article is also available in:
Translated by AI from English
เป้าหมายของบทช่วยสอนนี้คือการอธิบายพื้นฐานเกี่ยวกับวิธีเริ่มต้นใช้งาน API เปิดโปรเจกต์แรกของคุณ รันการจำลอง และแสดงผลลัพธ์ในคอนโซล ส่วนนี้ควรเป็นข้อกำหนดเบื้องต้นก่อนที่คุณจะดำเนินการไปยังส่วนถัดไปของการเรียนรู้

API (Application Programming Interface) คืออะไร

ชุดของกฎและโปรโตคอลที่ช่วยให้แอปพลิเคชันซอฟต์แวร์ต่างๆ สามารถสื่อสารกันได้ โดยกำหนดวิธีการจัดโครงสร้างคำขอและการตอบสนอง ทำให้นักพัฒนาสามารถใช้ฟังก์ชันหรือบริการที่กำหนดไว้ล่วงหน้าได้โดยไม่ต้องเข้าใจการทำงานภายใน 

REST API ใน IDEA StatiCa Connection - คือ เว็บเซอร์วิสที่โฮสต์ในเครื่องซึ่งปฏิบัติตามหลักการ REST ช่วยให้ระบบสามารถสื่อสารโดยใช้วิธี HTTP มาตรฐานเพื่อดำเนินการกับทรัพยากร ซึ่งโดยทั่วไปแสดงในรูปแบบ JSON

แหล่งข้อมูลและ GITHUB

แหล่งที่มาของตัวอย่างที่มีอยู่และกำหนดไว้ล่วงหน้าเชื่อมโยงอยู่บน GitHub ของเรา: 

วิธีเริ่มต้นใช้งาน

บทช่วยสอนนี้จะแนะนำร่วมกับภาษาโปรแกรม Python คุณสามารถดาวน์โหลดเวอร์ชันล่าสุดได้ที่นี่ คุณสามารถใช้ Integrated Development Environment (IDE) หลายตัวเป็นเครื่องมือสำหรับการเขียนโค้ด การดีบัก และการทดสอบอย่างมีประสิทธิภาพ ต่อไปนี้คือตัวเลือกบางส่วน: 

วิธีรัน API

ตัวเปิด API สามารถพบได้ในโฟลเดอร์ที่จัดเก็บ IDEA StatiCa เวอร์ชันล่าสุดของคุณ เพียงรันไฟล์ปฏิบัติการ 

inline image in article

หากคุณรัน "IdeaStatiCa.ConnectionRestApi.exe" CMD (Command Prompt) จะปรากฏขึ้น และคุณจะเห็น localhost ของคุณและสามารถเปิดแอป Swagger ที่ช่วยให้คุณเห็นโครงสร้างของโค้ดสำหรับควบคุม API กด Control + ปุ่มซ้ายของเมาส์ เพื่อเปิด Swagger 

inline image in article

Swagger ในโหมดออนไลน์จะให้คำแนะนำเกี่ยวกับตัวเลือกของ API สำหรับการออกแบบการเชื่อมต่อ 

inline image in article

วิธีเปิด Python และติดตั้งแพ็กเกจ API

ฉันใช้ PyCharm ซึ่งอธิบายขั้นตอนทั้งหมด วิธีการทำงานเหมือนกันกับเครื่องมืออื่นๆ เปิด Python และสร้าง New Project 

inline image in article

ติดตั้งแพ็กเกจ " ideastatica_connection_api" เริ่มต้นด้วยการเปิด terminal และพิมพ์ "pip install ideastatica_connection_api" หากคุณรันคำสั่งนี้ library สำหรับ API จะถูกติดตั้ง 

"pip install ideastatica_connection_api" - ใช้งานได้กับ IDEA StatiCa เวอร์ชันล่าสุด หากคุณมีเวอร์ชันเก่ากว่า คุณต้องระบุเวอร์ชันให้ชัดเจนเพื่อเรียกใช้ API library ที่เหมาะสม

(ตัวอย่างเช่น: "pip install ideastatica_connection_api==25.1.1.923" )

inline image in article

ขั้นตอนที่กล่าวมาข้างต้นเป็นสิ่งจำเป็นที่ต้องดำเนินการตามลำดับ มิฉะนั้น API จะไม่ทำงานอย่างถูกต้อง


เปิดโปรเจกต์ในแอปพลิเคชันบนเดสก์ท็อป

เป้าหมายคือการควบคุมการจำลองและผลลัพธ์ผ่านอินเทอร์เฟซ Python และอ่านผลลัพธ์โดยตรงในคอนโซล

เปิด splice connection และรันการคำนวณสำหรับ LE1 และรับผลลัพธ์ ดังที่คุณเห็น การตรวจสอบทั้งชุดผ่านทั้งหมด คุณสามารถดำเนินการต่อไปยัง Python ได้ 

inline image in article

Python script

นำเข้าแพ็กเกจที่จะช่วยให้สามารถใช้การคำนวณและเชื่อมต่อกับ localhost URL ได้ 

Source code:

## Link with baseUrl
import ideastatica_connection_api.connection_api_service_attacher as connection_api_service_attacher

inline image in article

กำหนดค่า logging ผ่านตัวแปร "baseUrl" ซึ่งจะดึง localhost ของคุณขึ้นมา ในขั้นตอนที่สอง ระบุ absolute path ของไฟล์ IDEA StatiCa Connection ของคุณ

Source code:

## Configure logging
baseUrl = "http://localhost:5000"

## Absolute path into folder with your python script and connection module
project_file_path = r"C:\Users\LukasJuricek\Desktop\API_IDEA\Splice.ideaCon"

print(project_file_path)

inline image in article

เชื่อมต่อ client กับบริการที่กำลังรันอยู่แล้ว (1) ใช้บล็อก try/except - เมื่อบล็อก try เกิดข้อผิดพลาด บล็อก except จะถูกดำเนินการ ในขั้นตอนแรกจำเป็นต้องเปิดโปรเจกต์ (2) และค้นหา project ID ของโปรเจกต์ของคุณซึ่งมีความเฉพาะตัวสำหรับทุกโปรเจกต์ IDEA StatiCa (3) หากคุณรัน script คุณจะสามารถอ่าน path ที่พิมพ์ออกมาพร้อม unique ID (4)

Source code:

with connection_api_service_attacher.ConnectionApiServiceAttacher(baseUrl).create_api_client() as api_client:
   try:
       ## Open the project
       openProject = api_client.project.open_project_from_filepath(project_file_path)

       ## Unique project ID that provide the control over the model
       projectId = api_client.project.active_project_id
       print(projectId)

inline image in article

ดึงข้อมูล "connection_ID" ที่จะระบุการเชื่อมต่อที่กำลังคำนวณ (1) รันการจำลองด้วยตัวแปร "calculation_run" ซึ่งต้องการพารามิเตอร์บังคับสองตัวที่ระบุในวงเล็บ (2) หากการจำลองเกิดขึ้น คุณจะเห็น connection ID และข้อมูลว่าการวิเคราะห์ของคุณผ่านแล้ว (3) 

Source code:

## Opening project that will be calculated
connection = openProject.connections[0]
print(connection)

connection_ID = [connection.id]
## Assigning connection ID
calculation_run = api_client.calculation.calculate(
   projectId,
   connection_ID
)
print('Finished')

inline image in article

ในขั้นตอนสุดท้าย คุณจะสำรวจวิธีการพิมพ์ผลลัพธ์ (1) และวิธีการวนซ้ำผ่าน unity check ทั้งหมด (2) ที่แสดงตามมาตรฐานบนเดสก์ท็อป (3)

Source code:

    ## Postprocessing - extract the unity check of connection
   Results = calculation_run[0].result_summary
   ## Loop over all unity checks like plates, bolts, welds
   for results in Results:
       print(results.unity_check_message)

except Exception as e:
   print("Operation failed : %s\n" % e)

inline image in article

บทสรุป

คุณได้รับประสบการณ์กับ API สำหรับการออกแบบการเชื่อมต่อ คุณได้เรียนรู้ว่าต้องติดตั้งเครื่องมือใดบ้าง วิธีเชื่อมต่อบริการ REST API และวิธีจัดการกับโค้ด Python เพื่อรับผลลัพธ์

Sample files