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.
IoT-For-Beginners/translations/km/2-farm/lessons/5-migrate-application-to-th.../assignment.md

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 -->