Giter Club home page Giter Club logo

networkeye's People

Contributors

coderyi avatar iimuy avatar kareem-hewady avatar panyult avatar zld 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  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

networkeye's Issues

Swift + CocoaPods

Hello, I'm having some problems importing the framework from CocoaPods into a Swift project.

Podfile:
pod 'NetworkEye', '~> 0.9.8'

Bridging-Header:

import <NetworkEye/NEHTTPEye.h>

Error when building in the bridging-header import: "Could not build module 'NetworkEye'

By going further, it seems this line is failing inside NEHTTPModelManager.h

import "FMDB.h"

I guess it's a pod related thing but it would be super awesome if you could fix this problem as I find this tool to have great potential.

Cheers!

Networkeye discussion about the need for a database, what you think needs to be stored intercepted requests to databases?

Networkeye discussion about the need for a database, what you think needs to be stored intercepted requests to databases?
1.networkeye actually a little thing, whether you need a database such a heavy thing,

  1. The network request because sometimes insert fast, such as when you use UIWebView , sometimes it will insert a lot of requests, it will also cause some inserted errors
  2. Insert the database, I am currently only insert JSON and XML, in some cases, such as webpage, or some text into the database and so will not convenient
  3. If you do not have a database, when it not in memory and you will not see; for example, many crashes because of erroneous network requests, after a crash ,you can not see the information of requested the network

- connection:didSendBodyData:totalBytesWritten:totalBytesExpectedToWrite: ... is never called when NetworkEye is enabled

so I found out that the delegate (NSURLConnectionDataDelegate) method - connection:didSendBodyData:totalBytesWritten:totalBytesExpectedToWrite: is never called when NetworkEye is enabled. So in connections that need progress tracking I disable NetworkEye first. I tried to fix it myself but I can't see a way of doing so with the current library design. I hope that you can find a way around it. Keep up the good work (Y)

[enhancement label]hope there's a mark for those who has already checked

hi, thanks for your tools.
i hope there's a function of making those apis with a mark after checked, cause there' many apis in the list and their names are nearly the same as each other that i cant not tell them until i checked the content inside it. this is really troublesome.
thanks again.

'UISearchDisplayController is no longer supported

*** Terminating app due to uncaught exception 'NSGenericException', reason: 'UISearchDisplayController is no longer supported when linking against this version of iOS. Please migrate your application to UISearchController.'

建议

2016年底之后iOS app 将取消http的,所以使用charles就增加了一个门槛。所以NetworkEye的使用需求将会增加。所以这里需要改善一下。

去除把捕获的每一个请求保存数据库的逻辑(太影响速度了),只有需要的时候(比如看到一个错误请求)才主动保存数据库。这个跟charles不主动保存,需要的时候export一个样。

记得加上!

startLoading中NSURLConnection的问题。

采用NSURLSessionDataTask发出去的请求,都会被拦截下来变成NSURLConnection发出去,这样iOS7之后出的这套API就没啥用处了。仅仅只是上层用了新的API来创建了一个request而已,实际是被NSURLConnection接管了。NSURLSession的共享cookies、验证策略、少一次握手等这些功能都没有了。

个人觉得是一种得不偿失的方法,请问,有没有其他的解法。

Error in responseJSON

I modify data like this: (in NEHTTPEye.m)
-(id) responseJSON {
。。。
if(error){
NSLog(@"JSON Parsing Error: %@", error);
return nil; // <= here
}
。。。
}

When "returnValue" is nil , the "NSJSONSerialization" will raise a NSException. So I return right now when error is not nil.

流量大小获取相关问题

流量的获取是用的NSURLResponse的 expectedContentLength,但这应该只是在网络正常情况下,请求完全走通后的一个数据,并不能代表实际真实产生的流量吧,请问这个需要怎么获取网络不好,请求走到一半就断了的情况?

iOS13 使用UISearchDisplayController导致崩溃

在 iOS 8 之前,我们在 UITableView 上添加搜索框需要使用 UISearchBar + UISearchDisplayController 的组合方式,而在 iOS 8 之后,苹果就已经推出了 UISearchController 来代替这个组合方式。在 iOS 13 中,如果还继续使用 UISearchDisplayController 会直接导致崩溃,崩溃信息如下:
引用:https://www.jianshu.com/p/767e6f2d8435

关于networkeye是否需要数据库的讨论,请问大家觉得拦截到的请求需要存储到数据库吗?

关于networkeye是否需要数据库的讨论,请问大家觉得拦截到的请求需要存储到数据库吗?
1.networkeye其实是一个小东西,是否需要一个数据库这样一个比较重的东西,
2.因为网络请求有时候插入速度比较快,比如访问UIWebView的时候,有时候就会插入很多请求,这样也会造成一些插入出错
3.插入数据库,我目前只插入JSON和XML,有些情况,比如网页的联调,或者一些文本等就不方便插入数据库了
4.如果不用数据库,不在内存的时候就看不到了;比如很多崩溃就是因为网络请求的错误,崩溃之后就看不到网络请求的信息了

优化

-[NEHTTPEye stringWithDate:]里面的dateFormatter可以用static来优化一下吧,NSDateFormatter初始化还是比较耗时的。

Crash bug

JSON Parsing Error: Error Domain=NSCocoaErrorDomain Code=3840 "JSON text did not start with array or object and option to allow fragments not set." UserInfo={NSDebugDescription=JSON text did not start with array or object and option to allow fragments not set.}

image

returnValue 为nil 会导致crash

异常情况求处理

Click record in filter result table didn't go to the right detail view

Steps to reproduce the bug:

  1. Shake and show the network request view, remember the first record's url as A.
  2. Type anything to start a filter query, such as POST.
  3. In the filter result table, remember the new first record's url as B.
  4. Click the first record, show the detail view. The detail view is A instead of B.

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.