GCDWebServer / GCDWebUploader

GCDWebServer 不支持  HTTPS
GCDWebServer 支持 Basic / Digest Authenticate

如果想在 GCDWebServer 上添加 Login 功能,可行的方法是:
开启 Digest Authenticate


- (BOOL)startWithPort:(NSUInteger)port bonjourName:(NSString*)name { NSMutableDictionary* options = [NSMutableDictionarydictionary];
[optionssetObject:[NSNumbernumberWithInteger:port]forKey:GCDWebServerOption_Port];[optionssetValue:nameforKey:GCDWebServerOption_BonjourName];[optionssetValue:GCDWebServerAuthenticationMethod_DigestAccessforKey:GCDWebServerOption_AuthenticationMethod];
[optionssetValue:[NSDictionarydictionaryWithObjectsAndKeys:@"pass",@"admin",nil]forKey:GCDWebServerOption_AuthenticationAccounts];
return[selfstartWithOptions:optionserror:NULL];
}

添加这两行:
[optionssetValue:GCDWebServerAuthenticationMethod_DigestAccessforKey:GCDWebServerOption_AuthenticationMethod];
[optionssetValue:[NSDictionarydictionaryWithObjectsAndKeys:@"pass",@"admin",nil]forKey:GCDWebServerOption_AuthenticationAccounts];

比较简单的方法。不过, nonce 超时好像 GCDWebServer 做的不太好,也就是登录了之后,拷贝URL地址,再启动一个浏览器线程,直接打开刚才复制的页面URL 还是可以打开的。

不知道超时是多久,也没找到设置超时的地方,按道理应该每一个request 都有一个 nonce 的。

再研究研究

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,188评论 19 139
  • 一、概念(载录于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434阅读 12,725评论 6 152
  • 技术无极限,从菜鸟开始,从源码开始。 由于公司目前项目还是用OC写的项目,没有升级swift 所以暂时SDWebI...
    充满活力的早晨阅读 14,344评论 0 2
  • Http协议详解 标签(空格分隔): Linux 声明:本片文章非原创,内容来源于博客园作者MIN飞翔的HTTP协...
    Sivin阅读 10,636评论 3 82
  • 周五晚上,下完晚自习,在回去的路上,在路上看着皎洁的明月,内心深处对生活又有着很多想法。长期在一个地方待着,想法很...
    珍是路人甲阅读 1,310评论 1 0

友情链接更多精彩内容