Tôi có một ứng dụng web cho iPhone, ứng dụng này cuối cùng sẽ chạy trong ứng dụng PhoneGap - nhưng hiện tại tôi đang chạy ứng dụng này trong Safari.Làm cách nào tôi có thể truy cập các phương pháp API Twitter chỉ từ một ứng dụng web
Ứng dụng cần truy cập tweet từ bạn bè trên Twitter, bao gồm cả các tweet riêng tư. Vì vậy, tôi đã triển khai OAuth bằng thư viện Scribe. Tôi đã thành công khi đưa người dùng lên Twitter, yêu cầu họ xác thực, sau đó trả lại.
Tại thời điểm này, ứng dụng web có thông tin đăng nhập oAuth (khóa và mã thông báo) mà nó vẫn tồn tại cục bộ. Từ đây tôi muốn nó sử dụng các phương thức của Twitter/user_timeline.json để lấy các tweet cho một người dùng cụ thể. Tôi có ứng dụng sử dụng các yêu cầu JSONP để thực hiện điều này với các tweet không được bảo vệ thành công; khi nó truy cập vào dòng thời gian của một nguồn cấp dữ liệu Twitter riêng tư, một hộp thoại xác thực cơ bản HTTP xuất hiện trong ứng dụng.
Tôi tin rằng tôi cần cung cấp thông tin đăng nhập OAuth cho Twitter để ứng dụng web của tôi có thể xác định và xác thực chính nó. Twitter khuyên bạn nên làm như vậy thông qua việc bổ sung một tiêu đề HTTP Authorization, nhưng khi tôi đang sử dụng JSONP cho yêu cầu, tôi không nghĩ rằng đây là một lựa chọn cho tôi. Tôi có giả định điều này không?
Do đó, các tùy chọn của tôi có vẻ như đang đặt thông tin xác thực oAuth dưới dạng thông số chuỗi truy vấn (mà Twitter đề xuất chống lại, nhưng tài liệu gợi ý vẫn hỗ trợ); hoặc ủy quyền tất cả các Tweet thông qua một máy chủ trung gian. Tôi muốn tránh cái sau.
tôi truy cập API Twitter sử dụng URL có dạng
Khi user_id là một người sử dụng công cộng, điều này hoạt động tốt. Khi user_id là một người dùng riêng, tôi nhận được hộp thoại Xác thực cơ bản HTTP đó. Bất kỳ ý tưởng những gì tôi đang làm sai? Tôi hy vọng đó là điều đơn giản đáng xấu hổ như "quên một tham số quan trọng" ...
Very nice! Điều này làm việc tốt cho bạn và bạn vẫn đang sử dụng phương pháp này? – Ivan