我正在努力让POST和GET请求正常工作(通过Postman),但这就是我所得到的,
获取请求
viewDidLoad
获取回应
if let numPhone = Int(strPhone) {
print(numPhone)
}
POST请求
curl -X GET http://localhost:8080/api/v1/namespaces/default/pods/mypod/exec
POST回复
{
"kind": "Status",
"apiVersion": "v1",
"metadata": {
},
"status": "Failure",
"message": "the server could not find the requested resource",
"reason": "NotFound",
"details": {
},
"code": 404
}
关于如何使这些请求有效的任何想法?需要更改哪些参数?
由于
答案 0 :(得分:1)
我认为你正试图进入一个吊舱。如果要执行pod,则需要websocket连接。
对于websocket连接,首先进行http(s)调用,然后使用 HTTP Upgrade 标头对websocket进行升级请求。
curl不支持从http升级到websocket。因此错误。
kubectl exec 对于这个用例会很方便。
您还可以尝试其他支持websockets的cli工具,例如
答案 1 :(得分:0)
wscat -n --header "Authorization: Bearer $TOKEN" -c 'https://200.200.200.160:6443/api/v1/namespaces/default/pods/mysql/exec?command=bash&container=mysql&stdin=true&stdout=true&tty=true'