更新时间:2025-02-18 gmt 08:00
使用临时url进行授权访问(c sdk)-九游平台

开发过程中,您有任何问题可以在github上,或者在中发帖求助。
功能说明
临时授权访问是指通过访问密钥、请求方法类型、请求参数等信息生成一个临时访问权限的url,这个url中会包含鉴权信息,您可以使用该url进行访问obs服务进行特定操作。在生成url时,您需要指定url的有效期。生成临时授权访问的url是通过设置结构体temp_auth_configure来实现的。
temp_auth_configure结构体存在于obs_options结构体中。该方法适用于每个c sdk接口。
参数 |
作用 |
sdk中对应的结构体 |
---|---|---|
expires |
生成的临时url的有效期 |
obs_options. temp_auth_configure |
temp_auth_callback |
回调函数用于返回生成的临时url |
|
callback_data |
回调数据 |
接口约束
- obs支持的region与endpoint的对应关系,详细信息请参见。
- 如果遇到跨域报错、签名不匹配问题,请参考以下步骤排查问题:
- 未配置跨域,需要在控制台配置cors规则,请参考。
- 签名计算问题,请参考url中携带签名排查签名参数是否正确;比如上传对象功能,后端将content-type参与计算签名生成授权url,但是前端使用授权url时没有设置content-type字段或者传入错误的值,此时会出现跨域错误。九游平台的解决方案为:content-type字段前后端保持一致。
方法定义
void (*temp_auth_callback)(char *temp_auth_url, uint64_t temp_auth_url_len, char *temp_auth_headers, uint64_t temp_auth_headers_len, void *callback_data);
通过obs c sdk生成临时url访问obs的步骤如下:
- 按照下面的代码示例,调用任意sdk接口生成带签名信息的url和header。
- 使用任意http库发送http/https请求,访问obs服务。
以下代码示例展示了如何使用临时url进行授权访问,包括:创建桶、上传对象、下载对象、列举对象、删除对象。
代码示例一:生成用于创建桶的临时授权url
以下示例展示如何生成用于创建桶的临时授权url:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 |
#include"esdkobs.h" #include |
代码示例二:生成用于上传对象的临时授权url
以下示例展示如何生成用于上传对象的临时授权url:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 |
#include"esdkobs.h" #include |
代码示例三:生成用于下载对象的临时授权url
以下示例展示如何生成用于下载对象的临时授权url:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 |
#include"esdkobs.h" #include |
代码示例四:生成用于列举对象的临时授权url
以下示例展示如何生成用于列举对象的临时授权url:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 |
#include"esdkobs.h" #include |
代码示例五:生成用于删除对象的临时授权url
以下示例展示如何生成用于删除对象的临时授权url:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 |
#include"esdkobs.h" #include |
父主题: 其他接口(c sdk)
相关文档
意见反馈
文档内容是否对您有帮助?
提交成功!非常感谢您的反馈,我们会继续努力做到更好!
您可在查看反馈及问题处理状态。
系统繁忙,请稍后重试
如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨