2012-12-26 24 views
5

Tôi đang cố thực hiện cuộc gọi đến API fitbit. Tôi không chắc chắn cách nhập yêu cầu HTTP được hiển thị bên dưới vào mã C Mục tiêu của tôi để thực hiện cuộc gọi này và xử lý phản hồi.Ví dụ về Yêu cầu HTTP của IOS

POST /oauth/request_token HTTP/1.1 
Host: api.fitbit.com 
Authorization: OAuth oauth_consumer_key="fitbit-example-client-application", 
oauth_signature_method="HMAC-SHA1", 
oauth_timestamp="1270248082", 
oauth_nonce="161822064", 
oauth_callback="http%3A%2F%2Fexample.fitbit.com%2Fapp%2FcompleteAuthorization", 
oauth_signature="Omf%2Bls2gn%2BDlghq245LRIyfMdd8%3D" 
oauth_version="1.0" 

Ví dụ đơn giản sẽ hữu ích. Cảm ơn bạn.

Trả lời

2

Tôi khuyên bạn nên sử dụng thư viện OAuth để xử lý tạo chữ ký OAuth. Nó có thể là một nỗi đau trong ass để wrangle tiêu đề Authorization. Tôi đã sử dụng oauthconsumer với thành công.

mẫu Mã số:

OAConsumer *consumer = [[OAConsumer alloc] initWithKey:oauthConsumerKey secret:oauthConsumerSecret]; 
OAToken *token = [[OAToken alloc] initWithKey:oauthAccessToken secret:oauthAccessTokenSecret]; 
OAHMAC_SHA1SignatureProvider *provider = [[OAHMAC_SHA1SignatureProvider alloc] init]; 

OAMutableURLRequest *request = [[OAMutableURLRequest alloc] initWithURL:[NSURL URLWithString:urlString] consumer:consumer token:token realm:nil signatureProvider:provider]; 
[request prepare]; 

NSHTTPURLResponse *response = nil; 
NSError *error = nil; 
NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error]; 

Trong ví dụ này, 5 dây bạn sẽ cung cấp bao gồm:

oauthConsumerKey 
oauthConsumerSecret 
oauthAccessToken 
oauthAccessTokenSecret 
urlString 
0

Tôi cố gắng để làm điều tương tự và oauthconsumer trông khá đẹp.

Có phải vì tôi không nhận được oauthAccessTokenSecret? [sửa] Vâng, đúng vậy.

tôi tiếp tục nhận được: "Trang này không còn giá trị Dường như bạn cung cấp một thẻ không hợp lệ hoặc ai đó đã sử dụng các thẻ mà bạn cung cấp Hãy quay về trang web hoặc ứng dụng mà gửi cho bạn vào trang này.. và thử lại."

[sửa] Điều này là do nó không có mã thông báo chính xác trên chuỗi url.

0

Hi bạn có thể lấy làm việc Fitbit OAuth1.0 Xác thực mẫu mã từ bên dưới liên kết

https://github.com/KaranRajpoot/FitBit

+0

Tôi không thể làm việc này và kết thúc bằng OAuth.io –