2015-01-10 16 views
6

Tôi đang tìm kiếm ở mọi nơi và không thể tìm được ví dụ phù hợp và không đủ thông thạo để có thể phân loại nó qua tài liệu . Ai đó có nhiều kiến ​​thức hơn tôi chỉ cho tôi cách tạo lệnh CURL cho OAUTH 2? Và có phải tôi chỉ cần khóa bí mật OAUTH 2? Tôi đang được hiển thị một phím App, ứng dụng bí mật và oauth 2. Tôi đang sử dụng điều này trong một kịch bản perl nếu nó quan trọng.Ví dụ về API DropBox PUT sử dụng Curl và Oauth 2 để tải tệp lên DropBox

Mã gần nhất tôi đã tìm thấy là thế này:

curl --request PUT --header "Content-Length: `ls -la jonathan.txt | awk '{ print $5}'`" --header   
"Content-Type: multipart/mixed" --data-binary "@jonathan.txt" "https://api-  
content.dropbox.com/1/files_put/dropbox/jonathan.txt?access_token=ABCDEF" 

Nhưng tôi không nghĩ rằng đó là OAuth 2?

Trả lời

12

Nếu bạn có một thẻ truy cập (tạo thông qua các ứng dụng giao diện điều khiển):

curl -H "Authorization: Bearer <your token>" https://api-content.dropbox.com/1/files_put/auto/ -T <your file path> 
9

Bạn cần mã thông báo truy cập cho tài khoản. (Điều này thường được mua lại thông qua luồng OAuth, nhưng bạn cũng có thể lấy một tài khoản cho tài khoản của riêng mình bằng cách nhấp vào nút "Tạo" trên trang cho ứng dụng Dropbox của bạn. Xem https://www.dropbox.com/developers/blog/94/generate-an-access-token-for-your-own-account.)

Khi bạn có quyền truy cập mã thông báo, lệnh curl của bạn có thể hoạt động, mặc dù tôi thích --header "Authorization:Bearer abc123xyz" hơn việc đặt mã thông báo truy cập vào thông số truy vấn. Ngoài ra, hãy thả số Content-Type: multipart/mixed, vì đó không phải là những gì bạn đang gửi.

Tôi cũng khuyên bạn nên "tự động" thay vì "dropbox", chỉ vì nó luôn hoạt động đúng bất kể loại ứng dụng.

+0

Cảm ơn vì điều đó. Ước gì tôi có thể chấp thuận cả hai, nhưng kể từ khi Hans làm cho nó đơn giản hơn một chút bằng cách đặt ra mã tôi đã đưa nó cho anh ta. Tuy nhiên, tôi đánh giá cao thông tin bổ sung. – CRAIG

Các vấn đề liên quan