• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

没有 UIWebView 的 iOS 应用程序身份验证

[复制链接]
菜鸟教程小白 发表于 2022-12-12 08:52:54 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

有没有办法在没有来自 Flask(Python) 后端的 webview 的情况下对用户进行身份验证?

这是我的后台登录代码:

@app.route('/login/', methods=['OST'])
def login():
    params = json.loads(request.data)
    username = params['username']
    password = params['password']
    u = User.query.filter_by(username=username).first()
    if u:
        if utils.check_password_hash(password, u.pw_hash):
            login_user(u)
            return ('', 200)
        else:
            return ('', 400)
    else:
        return ('', 400)



Best Answer-推荐答案


是的,您当然可以做到这一点。这是我通常的做法,根据您的需要进行更改(请记住,NSJSONSerialization 仅在 iOS 5+ 中可用):

@property (nonatomic) NSOperationQueue *basicQueue; //add this to your header or as an instance variable

-(void)logMeInNSString *)username passwordNSString *)password {

basicQueue = [[NSOperationQueue alloc] init];

NSDictionary *userCredentialsDict = [NSDictionary dictionaryWithObjectsAndKeys:username, @"username", password, @"password", nil];
NSData *encodedDict = [NSJSONSerialization dataWithJSONObject:userCredentialsDict options:NSJSONWritingPrettyPrinted error:NULL];

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString"http://yoursite.com/login"]];
[request setHTTPMethod"OST"];
[request setHTTPBody:encodedDict];
[request addValue"application/json" forHTTPHeaderField"Content-Type"];

[NSURLConnection sendAsynchronousRequest:request queue:basicQueue completionHandler:^(NSURLResponse *response, NSData *data, NSError *error) {
    NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse*) response;
    NSString *stringFromData = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
    if (httpResponse.statusCode == 200) {
        //do stuff
        NSLog(@"Received data, parsed into string: %@", stringFromData);
    } else {
        //do error stuff or whatever
    }

}];

}

如需更多信息, 看看

关于没有 UIWebView 的 iOS 应用程序身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14986980/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap