Coder Social home page Coder Social logo

zymxxxs / ymhttp Goto Github PK

View Code? Open in Web Editor NEW
176.0 9.0 32.0 17.17 MB

基于 libcurl 的 IO 多路复用 HTTP 框架,适用于 iOS 平台,支持 HTTP/HTTPS/HTTP2/DNS(SNI)

License: MIT License

Ruby 0.25% Objective-C 99.67% Python 0.09%
libcurl nsurlsession ios dns sni http https http2 libressl tls

ymhttp's People

Contributors

zymxxxs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ymhttp's Issues

设置请求超时的定时器进不去

  1. 自己内网模拟一条请求60秒超时。
  2. 发现定时器YMTimeoutSource一直不响应。然后直接断点发现,是如下代码一直在执行一直在占用着workquery线程,所以导致定时器没执行到。就想问下这是为什么,为什么请求退出去了,如下代码定时器也一直在执行。
    企业微信截图_52f573b2-bd38-4f70-8341-d9ae35959e7b

不支持https 双向验证

很感谢分享这个库,也学到了很多底层的网络库知识和NSURLSession的实现原理。
还想问下如果要实现https 自签名证书验证需要怎么修改或者有没有计划支持呢 谢谢

设置configuration 多次请求会崩溃

YMURLSessionConfiguration *config = [YMURLSessionConfiguration defaultSessionConfiguration];
YMURLSession *session = [YMURLSession sessionWithConfiguration:config];

使用该方式设置configuration,发送请求多次请求会出现崩溃问题,请问是否有解决方法

UT 失败

描述

完善 redirect 相关逻辑之后,也添加了相关UT,UT执行过程中,10次会失败2-3次。

目前暂时无法定位问题

libcurl

这个自行编译的,通不过,报错了

国密请求

如何实现HTTPS(SM2)请求,现在绝大部分都是基于RSA

偶现多个数据同时请求时交叉错乱返回了

多个api同时请求偶现交叉返回数据,(即:A接口的请求返回的却是B接口的数据导致数据类型匹配不上而闪退),但特意去排查复现很难,bugly每天的崩溃率非常高,都是这种数据类型不匹配导致

cache 相关问题汇总

未验证问题:

  • 目前已知iOS对于 http cache 只有缓存逻辑,没有校验逻辑,但发现缓存逻辑与HTTP Cache 的定义还是有些区别的,目前仅仅只是按照破老师之前逻辑简单了梳理了下(OKHTTP Cache 层的一个子集),具体区别需要后期特别验证。

其他

  • 从目前的效果来看,对于是否使用缓存的逻辑已经与系统保持已知,UT已经覆盖

后续

  • 参考下 swift-libcore-foundation 的实现

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.