how to access chrome net-internals from the chrome extension code - google-chrome

is it possible to access, invoke and see the results of operations in chrome://net-internals/ WITH and from the extension code that I am trying to write/build?

Not directly.
The closest analog is the WebRequest API, which gives you access to various bits and pieces of the network requests going back and forth between Chrome and the server. That doesn't, however, give you access to some of the even lower-level details that you see in net-internals.
What exactly would you like extensions to have access to? I'd suggest formulating a clear use-case, and filing a feature request: http://new.crbug.com/ as your best bet.

Related

Charles Proxy vs Chrome Inspect Element

I am new to Charles Proxy. As far as I have read, it gives me ability to see all the calls happening from within my application.
Is there any difference between what we can do using Charles Proxy and Chrome -> Inspect Element -> Network ?
My requirement is as follows:
I would like to see all the calls (specifically API calls) being made by the application I am browsing and that is to any levels.
Is this possible by any of them?
I am seeing one level API call but not any further (i.e. not multi-level).
Is this because none of the captures server to server API calls, which I feel should be.
Please let me know if any further information is needed to get the whole context.
After a bit more exploring found answer to the question
"I would like to see all the calls (specifically API calls) being made by the application I am browsing and that is to any levels."
This is possible through Charles Proxy but we need to have the application running in local. This is obvious server to server API calls will not be exposed so as a developer if he/she wants to get the any-level API calls being made by the application that he/she is trying to explore, the solution will be to setup the application locally and configure Charles Proxy.
Please share if anyone wants to share any other thought.

Access all new Chrome Notifications programmatically

I have no previous experience with programming Google Chrome plugins which is why I am starting here to see if what I want to accomplish is possible/reasonable. I do however have a pretty broad experience in programming in general.
What I want:
I want some kind of "trigger" to go off when a new Chrome Notification (you know these little pop ups above the system tray) is popping up. I want to execute some script/code depending on what information the notification contains so that I for example could have an alarm go off if I receive an email from a certain user with a certain key word in the subject and get a pop up from my Gmail Notifier extension.
This is however just an example and I have a bunch of ideas for different notifications from different extensions and websites so don't get caught up on that particular example.
When I look at the Chrome Notification API I see that there is a getAll method that supposedly is getting all the "notifications in the system" but I do not find any Event for new notifications.
I suppose a possibility would be to poll with getAll a couple of times per second (it needs to be really fast for some implementations I have in mind) but it feels very tacky.
Is there any way to easily access new Notifications programmatically in Chrome?
(I'm open to all solutions, programming languages and such...)
Well, I searched long and hard and got involved with the Chromium dev group and asked around there. As far as I could figure out there was no reasonable way of accessing all Notifications programatically.
So what I ended up doing was just download the source-code of Chromium and build my own custom version of chromium adding a very crude API. Worked like a charm and not as complicated as one might think.
Cheers!

Launch a desktop application from a browser

I'm trying to find a way to launch a desktop application from a browser for os x. This application will be for customers only and should only be used for the hardware we provide.
I'd like to start off by saying I think this is a stupid idea. I'm being forced to use this approach by our CEO. I understand security policies could be an issue, as well as glaring vulnerabilities.
Since they can only run this on a single device I don't know that jws would be the right solution. I haven't used it but based on what I've read it doubles as a distribution method (which we don't want). If it were to be jws then it would have to some how have to recognize the device we provided them to ensure it is being placed on the appropriate hardware, possibly based on the serial # (which I don't believe you can get from the browser).
Additionally, the browser would call methods and pass arguments to the application.
Is this even possible? If so, what tool would you recommend? Again, I'm only the messenger for this terrible idea.
You probably have Chrome or Safari configured to handle http://<uri> URIs, but many other types exist. Have you ever seen custom URI schemes used like itunes://<uri>, steam://<uri>, or skype://<uri> ?
Just like for http, when your OS tries to fetch the resource, it will attempt to handle the request in the application that registered a handler for that scheme.
If that's the kind of thing you're looking for, this question has already been answered.
My suspicion is that you were unaware of the term. If that answer works for you, we can mark this question as a duplicate.
In complement to #naomik's answer (which I believe is the right one), there are projects like AppJS, Fluid or Electron which are pretty much willing to bring web based apps to the desktop.
For the matter of communicating the App and your browser (should I say your server?), you could use an approach of message queues and websockets to get there, surely, it is a huge effort of orchestration and workarounds but in the end it is possible to get you there.
(Posted on behalf of the OP).
This does not appear to be possible. If you are considering this please don't, there are better solutions. I have finally convinced my CEO to use Angular2 inside electron for example.

View network activity for browser child window

I need to reverse-engineer some javascript application which does authorization using facebook auth.
Facebook auth window pops up, asks for my permissions, and gets closed instantly, so I am unable to grasp anything from the performed action, as it's too fast.
The problem is that neither Chrome DevTools, nor Firefox Firebug does display network activity for child windows like OAuth permission.
Is there a way to enable FULL network log? An extension, whatever? (It better be free and easy to use)
If you're using Windows, you need Fiddler. If you're not, you'll have to settle for Wireshark. Wireshark is more-general and an amazing tool, but Fiddler does a much better job for HTTP and SSL conversations like you're going to be examining.

What are some good ways to benchmark a REST api service?

Currently I use the REST Console extension for Google Chrome to see the JSON responses. I really like this client because it allows me to send authenticated requests that would otherwise not work for a anonymous request.
Are there any tools that I can use similar to this where I can benchmark the performance of my server?
For example returning the average response time, response time when under stress(1000 requests/sec).
What tools can I use that will be able to provide me with this information for a REST api service? I've looked into Jmeter but I don't think there is a Chrome plugin for it. I'm looking for a open ended answer.
ab is one of the widely used apache benchmarking tool.
It provides the results in the format you are looking for with the kind of load you want to generate.
http://httpd.apache.org/docs/2.2/programs/ab.html