Xin lỗi cho câu hỏi noob khác, thông thường tôi không cho vào cho đến khi tôi tự tìm ra giải pháp nhưng điều này đã khiến tôi mất 3 ngày và đã đến lúc phải thừa nhận bị mắc kẹt ...Khởi chạy thông tin nhận dạng ChromeWebAuthFlow chỉ mở trang gọi lại trống
tôi đang cố gắng để authenicate một phần mở rộng Chrome để sử dụng dữ liệu người dùng PushBullet qua OAuth2:
background.js
var client_id = '<32 DIGIT CLIENT ID>';
var redirectUri = "chrome-extension://lgekckejcpodobwpelekldnhcbenimbe/oauth2";
var auth_url = "https://www.pushbullet.com/authorize?client_id=" + client_id + "&redirect_uri=" + encodeURIComponent(redirectUri) + "&response_type=token";
chrome.identity.launchWebAuthFlow({'url':auth_url,'interactive':true}, function(redirect_url){
console.log(redirect_url)
});
manifest.json:
"permissions": [
"identity",
"*://*.google.com/*",
"*://*.pushbullet.com/*",
"storage"
],
"web_accessible_resources": [
"/oauth2/*"
Khi tôi tải phần mở rộng:
- Các Pushbullet phép pop-up sẽ mở ra và yêu cầu để cung cấp cho phép mở rộng của tôi (OK)
- Tôi đồng ý (OK)
- Các Cửa sổ Pushbullet đóng và một trang trống mới sẽ mở ra URL của rằng các cửa sổ là URI gọi lại có mã thông báo:
chrome-mở rộng: //lgekckejcpodobwpelekldnhcbenimbe/oauth2#access_token=o.zrrWrDozxMu6kftrMHb89siYJQhRVcoL
Tôi không mong đợi một trang trống để mở nhưng thay vì có launchWebAuthFlow chiếm được URI và có nó viết bằng giao diện điều khiển đăng nhập như mã trong hàm callback ... nhưng có vẻ như để chờ đợi ...
các lựa chọn duy nhất bây giờ là đóng trang trống này chỉ để xem đăng nhập sau đây:
Không được kiểm tra runtime.lastError khi chạy identity.launchWebAuthFlow: Người dùng không phê duyệt quyền truy cập.
Rõ ràng tôi đang thiếu thứ gì đó quan trọng ... tôi có cần mã bổ sung "ở đâu đó" để nhận URI gọi lại trong background.js không?
Cảm ơn, thực sự yêu cầu trợ giúp.
ShadowHunter
Xin chào Xan, cảm ơn bạn rất, rất nhiều ... Thay đổi URL gọi lại theo đề nghị của bạn đã làm nó. Hoạt động hoàn hảo ngay bây giờ, – ShadowHunter