Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jonascz/httptool
Android app allowing the manipulation of URLs, creation of HTTP requests with custom headers and body, and viewing / manipulating the response.
https://github.com/jonascz/httptool
Last synced: 10 days ago
JSON representation
Android app allowing the manipulation of URLs, creation of HTTP requests with custom headers and body, and viewing / manipulating the response.
- Host: GitHub
- URL: https://github.com/jonascz/httptool
- Owner: JonasCz
- License: gpl-2.0
- Created: 2016-02-08T14:46:49.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2016-02-09T09:00:02.000Z (almost 9 years ago)
- Last Synced: 2023-02-27T22:41:30.900Z (over 1 year ago)
- Language: JavaScript
- Homepage:
- Size: 422 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Http Request Creator:
##What is it ?
It's a tool which allows you to create custom HTTP requests, allows easy edition of the URL & its query parameters, allows the addition of custom request headers and request body content, and allows viewing of the response, manipulation (Such as extracting content from HTML with a JQuery-Style CSS selector or a regex,), either as HTML, raw text, or code, a well as saving to file. **Note that it's woefully incomplete, and most stuff does not work yet.**
##What's it for ?
You can:
* Build and test web scrapers, as it lets you download HTML pages and run CSS selectors or regexes on them.
* Test REST APIs
* View the source HTML of webpages, JavaScript, and CSS files - there's a code formatter / prettyprinter built in (based on Google code prettify), as well a deminifier (both not really complete or working yet though)
* Automate things, such as logging into a website and fetching a specific piece of information.
* A ton of other stuff, whatever you can think of :-)
## Features
###What works:
* Edit the URL for your request, add / edit / remove / view query parameters and paths segments, and it does the URL encoding for you.
* Edit the Headers for your outgoing request, add headers (has autocomplete), view & remove.
* View the HTTP headers of the response
* View the response body as plaintext, rendered / formatted HTML, prettified code, and other options.
* Extract text and HTML from the response body text (If it's HTML) using a JQuery style CSS selector (Uses Jsoup under the hood).
###What doesn't work yet and needs to be implemented:
* UI is big, and only suitable for tablets
* Adding request body, at the moment the "Add request body" screen does nothing
* Regex extract and truncate the response body feature
* Some of the other options for viewing / modifying / saving the response.
* Help is missing
* Settings / Options is missing
* Lots of UI controls don't do anything yet.
* Loading webpages and intercepting / viewing assets and ajax requests they make.
* A whole lot of other stuff.
* (Code is somewhat messy and needs some refactoring.)
##Compiling:
Just import the project into Android Studio and hit "Run". Uses Jsoup and OkHttp as dependencies, Android Studio will fetch them automatically.
If you can help improving / completing it, please do !
## Screenshots:
#### Main Screen:
![Main screen](https://raw.githubusercontent.com/JonasCz/HttpTool/master/screenshots/main.png)
***#### URL & query parameter editor:
![URL editor](https://raw.githubusercontent.com/JonasCz/HttpTool/master/screenshots/url.png)
***#### Dialog to extract text from the response with a CSS selector:
![CSS extract dialog](https://raw.githubusercontent.com/JonasCz/HttpTool/master/screenshots/cssextract.png)
***More screenshots can be found in the [screenshots directory](https://github.com/JonasCz/HttpTool/master/screenshots/).
## About
#### Licence is GPLv2+, see the LICENCE file:
**Note:** Don't use or modify my code unless you can comply with the license, and release the source code of your modifications where necessary. I don't want to see my hard work end up in some commercial app. Thanks.
```
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
```