iOS-微博登入回撥不成功的解決
之前微博登入正常實現,後來回撥到客戶端就是客戶端不執行下一步操作
原因 : 不知道哪一天給貼上上了不知道在哪個地方複製的代理方法
解決 : 刪掉就好了
要刪的!!!!!
-(void)request:(WBHttpRequest *)request didReceiveResponse:(NSURLResponse *)response{
}
/**
收到一個來自微博Http請求的網路返回
@param data 請求返回結果
*/
- (void)request:(WBHttpRequest *)request didFinishLoadingWithDataResult:(NSData *)data{
}
/**
收到快速SSO授權的重定向
@param URI
*/
- (void)request:(WBHttpRequest *)request didReciveRedirectResponseWithURI:(NSURL *)redirectUrl{
}
[需要的回撥! 微博登入和微博分享都會走這個回撥,if語句進行區分] 下面的是我之前的,有一些自己封裝的東西懶得刪了,直接跳過看吧
#pragma mark - sina
- (void)didReceiveWeiboRequest:(WBBaseRequest *)request{
}
- (void)didReceiveWeiboResponse:(WBBaseResponse *)response{
self.sinaResponse = [[SSSocialUserInfoResponse alloc] init];
self.sinaResponse.platformType = SSSocialPlatformTypeSina;
if ( [response isKindOfClass:[WBAuthorizeResponse class]] && self.isShared == NO) {
// 登入授權
if (response.statusCode == WeiboSDKResponseStatusCodeSuccess ) {
NSString *token = [(WBAuthorizeResponse *)response accessToken];
NSString *userid = [(WBAuthorizeResponse *)response userID];
self.sinaResponse.statusCode = SSSocialResponseStatusCodeSuccess;
self.sinaResponse.openid = userid;
self.sinaResponse.accessToken = token;
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithCapacity:2];
[params setObject:token forKey:@"access_token"];
[params setObject:userid forKey:@"uid"];
//傳送請求 獲取各種資料 對應的URL和請求方式heepMethod是不同的 詳細的參考微博開放平臺
[WBHttpRequest requestWithURL:@"https://api.weibo.com/2/users/show.json" httpMethod:@"GET" params:params delegate:self withTag:@"getUserInfo"];
}else if (response.statusCode == WeiboSDKResponseStatusCodeUserCancel){
self.sinaResponse.statusCode = SSSocialResponseStatusCodeUserCancel;
self.sinaResponse.error = @"取消操作";
_userInfoBlock(self.sinaResponse);
if (self.callbackResponse != nil) {
self.callbackResponse(@"cancel", nil);
}
}else{
self.sinaResponse.statusCode = SSSocialResponseStatusCodeAuthDeny;
self.sinaResponse.error = @"授權失敗";
_userInfoBlock(self.sinaResponse);
if (self.callbackResponse != nil) {
self.callbackResponse(@"failed", nil);
}
}
}else{
// 分享
self.isShared = NO;
if (response.statusCode == WeiboSDKResponseStatusCodeSuccess) {
if (self.callbackResponse != nil) {
self.callbackResponse(@"success", nil);
}
}
}
}
#pragma mark - WBHttpRequestDelegate
/**
收到一個來自微博Http請求的網路返回
@param result 請求返回結果
*/
-(void)request:(WBHttpRequest *)request didFinishLoadingWithResult:(NSString *)result {
NSData *data = [result dataUsingEncoding:NSUTF8StringEncoding];
NSDictionary *dic=[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
if (dic == nil) {
self.sinaResponse.statusCode = SSSocialResponseStatusCodeAuthDeny;
self.sinaResponse.error = @"授權失敗";
_userInfoBlock(self.sinaResponse);
return;
}
self.sinaResponse.statusCode = 0;
self.sinaResponse.nickname = [dic objectForKey:@"screen_name"];
self.sinaResponse.iconurl = [dic objectForKey:@"profile_image_url"];
_userInfoBlock(self.sinaResponse);
}
/**
收到一個來自微博Http請求失敗的響應
@param error 錯誤資訊
*/
- (void)request:(WBHttpRequest *)request didFailWithError:(NSError *)error{
self.sinaResponse.statusCode = SSSocialResponseStatusCodeAuthDeny;
self.sinaResponse.error = @"授權失敗";
_userInfoBlock(self.sinaResponse);
}
相關文章
- 微博回撥介面
- 解析Promise解決非同步回撥Promise非同步
- 【網頁登入】QQ 登入、微信登入、微博登入、GitHub 登入網頁Github
- Android BLE & BluetoothGattCallback.onServicesDiscovered不回撥或部分回撥解決Android
- Flutter Future 回撥地獄的一種解決思路Flutter
- 第三方登入 (微博登入 web)Web
- java回撥函式-非同步回撥-簡明講解Java函式非同步
- 新浪微博共享登入後無法退出切換賬號問題解決
- 回撥機制詳解
- 友盟iOS微信登陸沒有回撥的原因iOS
- Java回撥機制解讀Java
- promise解決回撥地獄;啥?前端還有“地獄?”Promise前端
- Activity生命週期回撥是如何被回撥的?
- 微信網頁授權登入回撥多個二級域名站的處理方法網頁
- [JS]回撥函式和回撥地獄JS函式
- jquery ajax 回撥函式的值alert出來[object Object] 解決方法jQuery函式Object
- 初步講解JS中的callback回撥原理JS
- SSH登入很慢問題的解決
- 奇怪的登入問題及解決
- 解決ssh登入慢的問題
- jQuery原始碼剖析(四) - Deferred非同步回撥解決方案jQuery原始碼非同步
- 「新手上路」Go 微博授權登入Go
- Java 回撥機制(CallBack) 趣解Java
- Java介面回撥機制詳解Java
- 微博登入接入出現錯誤碼21322(重定向地址不匹配),其他解決方法
- Android 微信分享後留在微信,沒有回撥的問題解決方案Android
- Android 第三方登入之新浪微博授權登入Android
- sunny 攔截不成功解決
- 關於接入微博登入的程式碼實現
- 用Promise建構函式來解決地獄回撥問題Promise函式
- 解決單點登入的一個方法!
- Laravel 第三方登入之微博Laravel
- 社會化登入分享-新浪微博 SDK接入
- 新浪微博動態 RSA 分析圖文+登入
- C 語言回撥函式詳解函式
- 通過c++示例解釋回撥C++
- 回撥函式的作用函式
- peoplesoft不能登入DB解決方法