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);
}
相關文章
- 微博回撥介面
- 【網頁登入】QQ 登入、微信登入、微博登入、GitHub 登入網頁Github
- 接入微信公眾號登入-回撥
- Android 微信分享後留在微信,沒有回撥的問題解決方案Android
- 解析Promise解決非同步回撥Promise非同步
- 微信網頁授權登入回撥多個二級域名站的處理方法網頁
- Android BLE & BluetoothGattCallback.onServicesDiscovered不回撥或部分回撥解決Android
- 微信小程式 unionid 登入解決方案微信小程式
- 微信登入-6問題解決方案
- 微信小程式登入方式的修改解決方案微信小程式
- Flutter Future 回撥地獄的一種解決思路Flutter
- 「新手上路」Go 微博授權登入Go
- Android 第三方登入之新浪微博授權登入Android
- 微博登入接入出現錯誤碼21322(重定向地址不匹配),其他解決方法
- 新浪微博動態 RSA 分析圖文+登入
- Laravel 第三方登入之微博Laravel
- java回撥函式-非同步回撥-簡明講解Java函式非同步
- 【詳細、開箱即用】.NET企業微信回撥配置(資料回撥URL和指令回撥URL驗證)
- 封裝QQ、微信、微博的第三方登入和分享封裝
- 為爬蟲獲取登入cookies: 使用Charles和requests模擬微博登入爬蟲Cookie
- PHP基於laravel框架獲取微博資料之一 模擬新浪微博登入PHPLaravel框架
- .NET Core 企業微信回撥配置
- promise解決回撥地獄;啥?前端還有“地獄?”Promise前端
- jQuery原始碼剖析(四) - Deferred非同步回撥解決方案jQuery原始碼非同步
- Activity生命週期回撥是如何被回撥的?
- js在微信、微博、QQ、Safari喚起App的解決方案JSAPP
- jquery ajax 回撥函式的值alert出來[object Object] 解決方法jQuery函式Object
- 初步講解JS中的callback回撥原理JS
- [JS]回撥函式和回撥地獄JS函式
- SSH登入很慢問題的解決
- [20200429]記錄不成功的登入在alert檔案.txt
- sunny 攔截不成功解決
- 解決微信小程式登入與釋出的一些問題微信小程式
- 回撥方法
- 用Promise建構函式來解決地獄回撥問題Promise函式
- C 語言回撥函式詳解函式
- 通過c++示例解釋回撥C++
- 回撥函式的作用函式