Tôi đang tạo một chương trình để xóa bộ nhớ cache CDN. Và vì vậy tôi đã làm như tài liệu nói rằng tôi vẫn có được điều này:Làm cách nào để ủy quyền yêu cầu Azure REST API?
{ "lỗi": { "code": "AuthenticationFailedInvalidHeader", "message":." Xác thực không thành tiêu đề 'Phép' được cung cấp trong một định dạng không hợp lệ. " } }
Vì vậy, về cơ bản, mã thông báo xác thực bị định dạng sai (không sai hoặc hết hạn). Mặc dù tôi đã làm như tài liệu gợi ý.
My dòng chảy Yêu cầu-đáp ứng trông như thế này (tôi obfuscated dữ liệu thực tế):
REQUEST
POST /subscriptions/29bdq1a7-348b-48fe-b9e6-b90c432892ff/resourceGroups/cdn-4/providers/Microsoft.Cdn/Profiles/CDN-3-Premium/endpoints/custom-endpoint.azureedge.net/purge?api-version=2015-06-01 HTTP/1.1
Content-Length: 90
User-Agent: GuzzleHttp/6.1.1 curl/7.35.0 PHP/7.0.2-2+deb.sury.org~trusty+1
Host: management.azure.com
Authorization: SharedAccessSignature uid=56c6d48a66904d02ce030003&ex=2017-02-19T11:41:00.0000000Z&sn=9wBsmFuP1ps01rt8nVlvsiAIdJMOqNsmGaiXUlfT35RxOvWAjHHcSIQdJA8v9wGvX4bJgX5fu1QyqVG6y9iQ6Q==
Content-Type: application/json
{
"ContentPaths": [
"/uploads/static/ads_en.json",
"/pic2.jpg"
]
}
RESPONSE
HTTP/1.1 401 Unauthorized
Cache-Control: no-cache
Pragma: no-cache
Content-Type: application/json; charset=utf-8
Expires: -1
WWW-Authenticate: Bearer authorization_uri="https://login.windows.net/c87x6f33-af21-4461-a5b1-29647d8e9281", error="invalid_token", error_description="The authentication scheme of SharedAccessSignature is not supported."
x-ms-failure-cause: gateway
x-ms-request-id: 3514027b-e731-411c-b8es-cdf77d636284
x-ms-correlation-request-id: 3514137b-e731-411c-b8ee-cdf77d636284
x-ms-routing-request-id: WESTEUROPE:20160219T110919Z:3514037b-e731-411c-b7ee-cdf77d636184
Strict-Transport-Security: max-age=31536000; includeSubDomains
Date: Fri, 19 Feb 2016 11:09:19 GMT
Connection: close
Content-Length: 150
{"error":{"code":"AuthenticationFailedInvalidHeader","message":"Authentication failed. The 'Authorization' header is provided in an invalid format."}}\
Bạn có thể đề nghị cách để giải quyết nó?
Theo tài liệu nào? API REST có hỗ trợ SharedAccessSignatures không? –
Vì vậy, tôi đã nghiên cứu hai nguồn sau: https://msdn.microsoft.com/en-us/library/azure/dn776326.aspx và https://msdn.microsoft.com/en-us/library/mt634451 .aspx –
Liên kết đầu tiên là về quản lý API Azure (https://azure.microsoft.com/en-us/documentation/articles/api-management-key-concepts/), đây là một sản phẩm khác. Nó không phải là API Azure Rest. xem liên kết này để biết thêm thông tin: https://msdn.microsoft.com/en-us/library/azure/ee460782.aspx –