IBM Cloud中如何用curl获取访问组列表?请求基础URL报错
IBM CLI执行Curl操作访问组时的URL错误问题
我尝试在IBM CLI中执行curl命令获取访问组列表,但遇到了基础URL相关的错误。我执行的curl命令如下:
curl -X POST --location --header "Authorization: Bearer <SAMPLE IAM TOKEN>" --header "Accept: application/" --header "Content-Type: application/" --data '{ "name": "Managers", "description": "Group for managers" }' "<sample URL>/v2/=<ACCOUNT ID>"
注:上述命令为实际执行的命令,因格式问题呈现如上。
问题分析及修正方案
- URL格式错误:原命令的URL路径
/v2/=<ACCOUNT ID>不符合IBM IAM访问组API的规范,无论创建还是查询访问组,都需要使用正确的路径结构。 - 请求头不完整:
Accept和Content-Type头缺少具体类型,必须指定为application/json,否则API无法正确解析请求内容。 - 请求方法与操作不匹配:如果是要获取访问组列表,应该使用
GET方法;如果是要创建访问组,才用POST方法,原命令的操作目标和请求方法存在矛盾。
修正后的获取访问组列表命令(GET)
curl -X GET --location --header "Authorization: Bearer <SAMPLE IAM TOKEN>" \ --header "Accept: application/json" \ "https://iam.cloud.ibm.com/v2/groups?account_id=<ACCOUNT ID>"
修正后的创建访问组命令(POST)
curl -X POST --location --header "Authorization: Bearer <SAMPLE IAM TOKEN>" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ --data '{ "name": "Managers", "description": "Group for managers" }' \ "https://iam.cloud.ibm.com/v2/groups?account_id=<ACCOUNT ID>"
内容的提问来源于stack exchange,提问作者anonymous
相关产品推荐
相关产品推荐

