Tôi gặp sự cố khi cố gắng thực hiện yêu cầu web đối với UGC và xác thực bằng oAuth. Tôi đang thực hiện yêu cầu trên web, chẳng hạn như: -Dịch vụ UGC Tridion và xác thực oAuth
WebRequest wr = WebRequest.Create("http://ugc.service/odata.svc/Ratings(Id=200)");
wr.Headers["authorization"] = "OAuth " + auth;
Trong đó auth là mã thông báo của tôi được trả về từ access_token.svc. Theo tài liệu token trở về từ các dịch vụ nên được một cái gì đó như: -
HufXeuUt% 2FYYElA8SYjJOkUkrXxV9dyXRirmKhjW% 2Fb% 2FU% 3D
Tuy nhiên, những gì tôi đang được trở về từ access_token.svc là giống như: -
{ "access_token": "client_id% 3dtestuser% 26expiresOn% 3d1361898714646% 26digest% 3d% 2fW% 2fvyhQneZHrm1aGhwOlgLtA9xGWd77hkxWbjmindtM% 3d", "expires_in": 300}
tôi đã phân tích cú pháp JSON để trích xuất các chuỗi khác nhau và đã cố gắng chuyển những thông tin này qua ủy quyền nhưng bất kỳ điều gì tôi cố gắng gặp phải lỗi gs - "ERROR OAuth2AccessToken - Thông báo sai." Chính xác phần nào của mã thông báo và định dạng nào tôi nên chuyển qua để ủy quyền?
Rất cám ơn
John
Câu hỏi khó, tôi hầu như không có bất kỳ trải nghiệm nào với OAuth. Nhưng tôi biết rằng các thuộc tính được truyền qua các tiêu đề được đặt trước bằng oauth_ ví dụ: oauth_consumer_key, oauth_token. Các thuộc tính trả về dường như tôi có thể sử dụng được trong một chuỗi truy vấn. Sử dụng thư viện OAuth có thể giúp bạn một chút. http://oauth.net/code/ –
Tôi đã gắn thẻ lại để bao gồm oauth và odata vì điều này có vẻ như là một vấn đề với điều đó hơn là Tridion. Hãy thử tìm kiếm các câu hỏi xung quanh các chủ đề đó. –