éè¿ HTTP 访é®äºå½æ°
éè¿ HTTP ç½å ³ï¼æ¨å¯ä»¥å°äºå½æ°é 置为æ åç HTTP æ¥å£ï¼æ é SDK å³å¯éè¿ HTTP 请æ±è°ç¨äºå½æ°ãæ¬ææ¡£ä»ç»å¦ä½é ç½®äºå½æ°ç HTTP 访é®ä»¥åå¦ä½å¤ç请æ±åååºã
妿æ¨éè¦ä¸ºäºå½æ°ç»å®èªå®ä¹ååï¼ç产ç¯å¢æ¨èï¼ï¼é¤äºä¸æ¹ãæ¹å¼ä¸ï¼è¯¦æ 页就å°ç»å®ãå¤ï¼å®æ´çèªå®ä¹ååæµç¨ï¼æ·»å ååãé ç½® SSL è¯ä¹¦ãCDN éæ©ãååææææ ¡éªãDNS è§£æçï¼è¯·åè èªå®ä¹ååé ç½®ãææéè¿ä»»æå ¥å£æ·»å çååï¼é½å¯ä»¥å¨ HTTP ç½å ³ ä¸ç»ä¸æ¥çå管çã
åç½® æ¡ä»¶â
- å·²å建äºå¼åç¯å¢
- å·²é¨ç½²è³å°ä¸ä¸ªäºå½æ°
é ç½® HTTP 访é®â
æ¨å¯ä»¥å¨äºå½æ°è¯¦æ é¡µç´æ¥ç»å®ååï¼æ¨èï¼ï¼ä¹å¯ä»¥å¨ HTTP ç½å ³ç»ä¸é ç½®ã
æ¹å¼ä¸ï¼è¯¦æ 页就å°ç»å®ï¼æ¨èï¼â
- åå¾ äºå½æ°ï¼è¿å ¥ç®æ äºå½æ°ç详æ 页
- å¨ãèªå®ä¹ååãæ¨¡åç¹å»ãæ·»å ååãæé®ï¼å¼¹åºç»å®çªå£
- å¨ã触åè·¯å¾ãä¸å¡«å HTTP 访é®è·¯å¾ï¼æ¯æ
/æèªå®ä¹è·¯å¾ - éæ©èªå®ä¹ååå确认ï¼å·²ç»å®çææååä¼å±ç¤ºå¨è¯¦æ 页çãåå管çãå表ä¸
æ¹å¼äºï¼å¨ HTTP ç½å ³ç»å®â
å¦ææ¨æ´ä¹ æ¯ä»å ¨å±è§è§ç®¡çååä¸èµæºçå ³ç³»ï¼ä¹å¯ä»¥å¨ HTTP ç½å ³ç»ä¸é ç½®ï¼
- åå¾ HTTP ç½å ³
- å¨ãååå ³èèµæºã模åç¹å»ãæ°å»ºãæé®
- é 置以ä¸ä¿¡æ¯ï¼
| é 置项 | 说æ | ç¤ºä¾ |
|---|---|---|
| å ³èèµæºç±»å | éæ©ãäºå½æ°ãï¼ç¶åéæ©ç®æ äºå½æ° | hello-world |
| åå | éæ©é»è®¤ååãèªå®ä¹ååæ *ï¼å¹é
ææååï¼ | é»è®¤åå |
| 触åè·¯å¾ | 设置 HTTP 访é®è·¯å¾ï¼æ¯æ / æèªå®ä¹è·¯å¾ | /api/hello |
ð¡ æç¤ºï¼ç产ç¯å¢å»ºè®®ç»å®å·²å¤æ¡çèªå®ä¹ååï¼ä»¥è·å¾å®æ´çæå¡è½åãé ç½®æ¹æ³è¯·åè èªå®ä¹ååé ç½®ã
æ¥éª¤ 2ï¼æµè¯è®¿é®â
é
ç½®å®æåï¼è®¿é® åå + 触åè·¯å¾ å³å¯è°ç¨äºå½æ°ï¼
# 示ä¾ï¼è®¿é®é»è®¤ååçäºå½æ°
curl https://your-env-id.<your-env-region>.app.tcloudbase.com/api/hello
åèµ· HTTP 请æ±â
é ç½®å®æåï¼å¯ä»¥ä½¿ç¨ä»»ä½ HTTP 客æ·ç«¯è®¿é®äºå½æ°ã
- curl
- JavaScript
- Python
# GET 请æ±
curl https://your-domain/your-function-path
# POST 请æ±
curl -X POST https://your-domain/your-function-path \
-H "Content-Type: application/json" \
-d '{"name": "CloudBase", "version": "1.0"}'
// ä½¿ç¨ fetch API
const response = await fetch('https://your-domain/your-function-path', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ name: 'CloudBase', version: '1.0' })
});
const data = await response.json();
console.log(data);
import requests
# POST 请æ±
response = requests.post(
'https://your-domain/your-function-path',
json={'name': 'CloudBase', 'version': '1.0'}
)
data = response.json()
print(data)
å¨äºå½æ°ä¸å¤ç HTTP 请æ±â
æ¥æ¶è¯·æ±ä¿¡æ¯â
å½éè¿ HTTP 访é®äºå½æ°æ¶ï¼å½æ°ç event åæ°ä¼å
å«å®æ´ç HTTP 请æ±ä¿¡æ¯ï¼
exports.main = async (event, context) => {
// event å¯¹è±¡ç»æ
const {
path, // HTTP 请æ±è·¯å¾ï¼å¦ /api/hello
httpMethod, // HTTP è¯·æ±æ¹æ³ï¼å¦ GETãPOSTãPUTãDELETE
headers, // HTTP 请æ±å¤´å¯¹è±¡
queryStringParameters, // URL æ¥è¯¢åæ°å¯¹è±¡ï¼å¦ ?name=value
body, // HTTP 请æ±ä½å
容ï¼åç¬¦ä¸²æ ¼å¼ï¼
isBase64Encoded, // body æ¯å¦ä¸º Base64 ç¼ç
requestContext // äºå¼åç¯å¢ç¸å
³ä¿¡æ¯
} = event;
// è¿åååº
return { message: 'success' };
};
示ä¾ï¼å¤çä¸åç±»åç请æ±â
- GET 请æ±
- POST 请æ±
- RESTful API
exports.main = async (event) => {
const { queryStringParameters } = event;
// è·åæ¥è¯¢åæ°
const name = queryStringParameters?.name || 'Guest';
return {
statusCode: 200,
body: JSON.stringify({
message: `Hello, ${name}!`,
timestamp: Date.now()
})
};
};
访é®ç¤ºä¾ï¼
curl "https://your-domain/greet?name=CloudBase"
# ååº: {"message":"Hello, CloudBase!","timestamp":1699999999999}
exports.main = async (event) => {
const { body } = event;
// è§£æ JSON 请æ±ä½
const data = JSON.parse(body);
return {
statusCode: 200,
body: JSON.stringify({
received: data,
processed: true
})
};
};
访é®ç¤ºä¾ï¼
curl -X POST https://your-domain/process \
-H "Content-Type: application/json" \
-d '{"userId": 123, "action": "update"}'
exports.main = async (event) => {
const { httpMethod, path, queryStringParameters, body } = event;
// è·¯ç±å¤ç
if (path === '/users' && httpMethod === 'GET') {
// è·åç¨æ·å表
return {
statusCode: 200,
body: JSON.stringify([{ id: 1, name: 'User1' }])
};
}
if (path.startsWith('/users/') && httpMethod === 'GET') {
// è·ååä¸ªç¨æ·
const userId = path.split('/')[2];
return {
statusCode: 200,
body: JSON.stringify({ id: userId, name: 'User' })
};
}
// 404
return {
statusCode: 404,
body: JSON.stringify({ error: 'Not Found' })
};
};
ç¸å ³ææ¡£â
- HTTP ç½å ³æ¦è¿° - äºè§£ HTTP ç½å ³çæ ¸å¿åè½åä¼å¿
- å¿«éå¼å§ - å¿«éå ¥é¨æå
- è·¯ç±é ç½® - é ç½®çµæ´»çè·¯ç±è§å
- èªå®ä¹ååé ç½® - ç»å®èªå®ä¹åå
- äºå½æ°å¼åæå - äºå½æ°ç¼åæç¨