2017-07-16 27 views
5

Tôi đã hỏi question một vài tuần trước mà tôi cho rằng sẽ giải quyết được sự cố với Đăng nhập/Đăng ký Google nhưng nó vẫn bị hỏng.Cách khắc phục Đăng nhập/Đăng ký Google bị suy yếu trên WKWebView?

  1. mở getpocket.com
  2. Click vào Đăng nhập tại>
  3. Bấm vào Đăng nhập với Google

Khi bạn nhập email và mật khẩu của bạn và bấm vào kế tiếp trang trở nên trống và không có gì xảy ra. Không có chuyển hướng, không tải, không có gì.

Trong Safari, việc chuyển hướng trang và đăng nhập diễn ra thành công.

Tôi đã dùng thử Google Login với stackoverflow.com và nó hoạt động!

Nhưng tôi tin rằng nó đang sử dụng một phương pháp khác vì nó không hỏi tôi về bất cứ điều gì, đăng nhập chỉ xảy ra. Nó thậm chí không yêu cầu tôi chọn tài khoản mà tôi muốn đăng nhập. Mọi thứ diễn ra tự động.

Thông thường, nếu bạn đã nhập email và mật khẩu, Google sẽ yêu cầu bạn chọn tài khoản bạn muốn sử dụng để đăng nhập mà không phải nhập lại thông tin.

Với getpocket.com màn hình này xuất hiện, tôi nhấp vào tài khoản của mình và tài khoản bị treo. Một hoạt hình thanh tải màu cam đóng mà không cần kết thúc.

Tôi không thể hiểu vấn đề là gì.

Nó có thể là tác nhân người dùng không?

Bất kỳ ý tưởng nào?

Việc khởi của WKWebView là rất cơ bản:

_webView = [[WKWebView alloc] init]; 
_webView.allowsBackForwardNavigationGestures = NO; 
_webView.allowsLinkPreview = NO; 
_webView.navigationDelegate = self; 
_webView.UIDelegate = self; 
_webView.frame = CGRectMake(0.0, 0.0, self.contentView.frame.size.width, self.contentView.frame.size.height); 
[self.contentView addSubview:_webView]; 

Tôi thậm chí đã thử một trình duyệt web phổ biến iCab Web Browser và vấn đề vẫn còn đó với getpocket.com

Trả lời

0

Dưới đây là một số nghiên cứu tôi thu thập được:

1) https://www.whatismybrowser.com/developers/tools/user-agent-parser/browse/browser-name/icab-user-agents - iCab mới nhất có tác nhân người dùng iCab.

2) https://en.wikipedia.org/wiki/User_agent#User_agent_spoofing - iCab có tính năng "giả mạo tác nhân người dùng". Khi bạn yêu cầu oAuth2.0, yêu cầu oAuth của bạn được kiểm soát bởi Dịch vụ của Google Play. Nếu Google Play Service không có tác nhân người dùng iCab thì Google Play sẽ sử dụng tác nhân người dùng mặc định và cuối cùng là từ máy chủ, trình duyệt iCab của bạn sẽ nhận được trang chuyển hướng HTML. Trong thời gian đó, iCab lại khớp với tác nhân người dùng. Ở đây, iCab tìm thấy tác nhân người dùng khác nhau, do đó, nó chặn tải trang.

Tôi đã kiểm tra từ Chrome, mọi thứ đều đang chạy. Vì vậy, có thể nó sẽ là vấn đề vì tác nhân người dùng.

https://udger.com/resources/ua-list - Trong trang này, tôi đọc iCab sử dụng tác nhân người dùng webkit.

Tôi không chắc chắn chính xác, nhưng có nhiều cơ hội do giả mạo tác nhân người dùng tính năng, nó đang tạo sự cố.

+0

có lẽ bạn là đúng. Tôi đang sử dụng tác nhân người dùng này: "Mozilla/5.0 (iPhone; CPU OS OS 10_3_2 như Mac OS X) AppleWebKit/603.1.30 (KHTML, như Gecko) Mobile/14F89 Safari/602.1" – Vulkan

0

thông báo của Google là rõ ràng: “Trong những tháng tới, chúng tôi sẽ không còn cho phép yêu cầu OAuth đối với Google trong các trình duyệt nhúng gọi là ‘web-quan điểm’, chẳng hạn như các yếu tố WebView UI trên Android và UIWebView/WKWebView trên iOS, và các khoản tương đương trên Windows và OS X.”

src: theregister.co.uk

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