You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
7.4 KiB
63 lines
7.4 KiB
# បន្ថែមការត្រួតត្រារលៃជាមួយដៃ
|
|
|
|
## សេចក្ដីណែនាំ
|
|
|
|
កូដ Serverless រអាចត្រូវបានបើកដោយរឿងជាច្រើនដែលខុសគ្នា រួមមានសំណើ HTTP ។ អ្នកអាចប្រើការត្រួតត្រា HTTP ដើម្បីបន្ថែមការផ្ទែផ្ទាត់ដោយដៃទៅការគ្រប់គ្រងរលៃរបស់អ្នក អនុញ្ញាតឱ្យនរណាម្នាក់បើកឬបិទរលៃពីសំណើបណ្តាញ។
|
|
|
|
សម្រាប់ការប្រលងនេះ អ្នកត្រូវបន្ថែមការត្រួតត្រា HTTP ពីរចូលទៅក្នុង Functions App របស់អ្នក ដើម្បីបើក និងបិទរលៃ ដោយប្រើវាជាពីរបៀបដែលអ្នកបានរៀនពីមេរៀននេះក្នុងការផ្ញើពាក្យបញ្ជាទៅឧបករណ៍។
|
|
|
|
មានពិចារណាខ្លះៗ៖
|
|
|
|
* អ្នកអាចបន្ថែមការត្រួតត្រា HTTP ទៅក្នុង Functions App មានស្រាប់របស់អ្នកជាមួយពាក្យបញ្ជា៖
|
|
|
|
```sh
|
|
func new --name <trigger name> --template "HTTP trigger"
|
|
```
|
|
|
|
ជំនួស `<trigger name>` ជាឈ្មោះសម្រាប់ការត្រួតត្រន HTTP របស់អ្នក។ ប្រើឈ្មោះដូចជា `relay_on` និង `relay_off`
|
|
|
|
* ការត្រួតត្រា HTTP អាចមានការត្រួតត្រាចូលប្រើ។ ដោយលំនាំដើមវាត្រូវការខ្សែសោ API ជាពិសេសសម្រាប់មុខងារ ត្រូវតែកាត់បន្ថយជាមួយ URL ដើម្បីអនុញ្ញាតអោយដំណើរការ។ សម្រាប់បេសកកម្មនេះ អ្នកអាចយកការកំណត់នេះចេញ ដូច្នេះនរណាដែលមានអាចប្រតិបត្តិមុខងារនេះបាន។ ដើម្បីធ្វើនេះ អាប់ដេតការកំណត់ `authLevel` នៅក្នុងឯកសារ `function.json` សម្រាប់ការត្រួតត្រា HTTP ជាដូចតទៅ៖
|
|
|
|
```json
|
|
"authLevel": "anonymous"
|
|
```
|
|
|
|
> 💁 អ្នកអាចអានបន្ថែមអំពីការត្រួតត្រាចូលនេះ ក្នុង [Function access keys documentation](https://docs.microsoft.com/azure/azure-functions/functions-bindings-http-webhook-trigger?WT.mc_id=academic-17441-jabenn#authorization-keys)។
|
|
|
|
* ការត្រួតត្រា HTTP ដោយលំនាំដើមគាំទ្រក្នុងការស្នើសុំ GET និង POST។ នេះមានន័យថាអ្នកអាចហៅវាតាមរបៀបកម្មវិធីរុករកបណ្តាញរបស់អ្នក - កម្មវិធីរុករកបណ្តាញធ្វើសំណើ GET។
|
|
|
|
នៅពេលអ្នករត់ Functions App ក្នុងម៉ាស៊ីនផ្ទាល់ខ្លួន អ្នកនឹងមើលឃើញ URL នៃការត្រួតត្រា:
|
|
|
|
```output
|
|
Functions:
|
|
|
|
relay_off: [GET,POST] http://localhost:7071/api/relay_off
|
|
|
|
relay_on: [GET,POST] http://localhost:7071/api/relay_on
|
|
|
|
iot-hub-trigger: eventHubTrigger
|
|
```
|
|
|
|
ប្តូរគេយូអិលទៅកម្មវិធីរុករករបស់អ្នក ហើយចុច `return` សូម្បីតែ `Ctrl+click` (`Cmd+click` នៅ macOS) លើតំណក្នុងបន្ទាត់ដំណើរការនៅ VS Code ដើម្បីបើកវានៅកម្មវិធីរុករកដើមរបស់អ្នក។ វានឹងដំណើរការការត្រួតត្រា។
|
|
|
|
> 💁 សូមចំណាំថា URL មាន `/api` ក្នុងវា - ការត្រួតត្រា HTTP ដោយលំនាំដើមនៅក្នុងផ្នែកសំណុំឈ្មោះផ្នែករង `api`។
|
|
|
|
* នៅពេលអ្នកផ្សព្វផ្សាយ Functions App URL នៃការត្រួតត្រា HTTP នឹងមានទ្រង់ទ្រាយ៖
|
|
|
|
`https://<functions app name>.azurewebsites.net/api/<trigger name>`
|
|
|
|
ដែល `<functions app name>` គឺជាឈ្មោះ Functions App របស់អ្នក និង `<trigger name>` ជាឈ្មោះការត្រួតត្រារបស់អ្នក។
|
|
|
|
## តារាងការវាយតម្លៃ
|
|
|
|
| កំហិតវិស័យ | ល្អប្រសើរ | ត្រឹមត្រូវ | ត្រូវការកែលម្អ |
|
|
| -------- | --------- | -------- | ----------------- |
|
|
| បង្កើតការត្រួតត្រា HTTP | បង្កើតបាន 2 ការត្រួតត្រា ដើម្បីបើក និងបិទរលៃ ជាមួយឈ្មោះសមរម្យ | បង្កើតបានមួយការត្រួតត្រាជាមួយឈ្មោះសមរម្យ | មិនអាចបង្កើតការត្រួតត្រាទេ |
|
|
| គ្រប់គ្រងរលៃពីការត្រួតត្រា HTTP | អាចភ្ជាប់ទាំងពីរការត្រួតត្រាទៅ IoT Hub និងគ្រប់គ្រងរលៃបានត្រឹមត្រូវ | អាចភ្ជាប់មួយការត្រួតត្រាទៅ IoT Hub និងគ្រប់គ្រងរលៃបានត្រឹមត្រូវ | មិនអាចភ្ជាប់ការត្រួតត្រាទៅ IoT Hub បាន |
|
|
|
|
---
|
|
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
|
**ការបដិទិន**៖
|
|
ឯកសារនេះត្រូវបានបកប្រែដោយប្រើសេវាកម្មបកប្រែ AI [Co-op Translator](https://github.com/Azure/co-op-translator)។ ខណៈពេលដែលយើងខិតខំរកភាពត្រឹមត្រូវ សូមប្រាកដថាការបកប្រែដោយស្វ័យប្រវត្តិអាចមានខុសត្រូវ ឬក៏អវចារណកថា។ ឯកសារដើមជาทាសាតិចតែលើសលប់គួរត្រូវបានគ្រប់គ្រងជាដើមកំណត់ឯកសារ។ សម្រាប់ព័ត៌មានសំខាន់ៗ សូមណែនាំការបកប្រែដោយអ្នកជំនាញមនុស្សជាផ្លូវការ។ យើងមិនទទួលខុសត្រូវចំពោះការយល់ច្រឡំ ឬការបកប្រែខុសៗទេ ដែលកើតមានពីការប្រើប្រាស់ការបកប្រែនេះ។
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER END --> |