HttpRun
A command line executor for VS Code Rest Client scripts
Quick Link: HttpRun Github repository
HttpRun in action
Background
The excellent Visual Studio Code - Rest Client Extension cannot run without the Visual Studio Code IDE and also cannot automatically execute requests sequentially (sending requests requires interaction using the mouse).
HttpRun fixes this limitation, but allowing
.httpscript files to be run from a command line.
What is it?
HttpRun is a cross-platform command-line
.httpscript executor.
Written in Microsoft .net core, it works on Windows and Unix platforms and implements a majority of the languages features of the Visual Studio code extension. Supporting batched execution of requests it has additional support for unattended execution with an extensive selection of command line options.
Apiway uses HttpRun during development and testing of their own Software platforms.
Feature support
HttpRun has been written to support as much of the original Visual Studio Code Rest Client feature set as possible. There have been a few compromises where functionality was not a good fit for an unattended script run from the command line,
however most functionality is supported and scripts written and debugged in Visual Studio Code will normally run with HttpRun successfully.
Feature | httprun | VS Code Rest Client |
---|---|---|
Send, Cancel & Re-run http requests | Partial - Send only | Yes |
Send GraphQL queries | No | Yes |
Copy as cURL | No | Yes |
Request History | No | Yes |
Multiple requests in same file | Yes | Yes |
Preview of Response | Yes | Yes |
Save response to disk | No | Yes |
Authentication support | ||
Basic Auth | Yes | Yes |
Digest Auth | Coming | Yes |
SSL Client Certificates | Coming | Yes |
Azure active directory | No | Yes |
Microsoft Identity Platform | No | Yes |
AWS Signature v4 | No | Yes |
Environment and Variable support | ||
Use variables in URL \ Headers \ Body | Yes | Yes |
Environment, File and Request variables | Yes | Yes |
System Dynamic variables | ||
{{$guid}} | Yes | Yes |
{{$randomInt min max}} | Yes | Yes |
{{$timestamp [offset option]}} | Yes | Yes |
{{$datetime rfc1123|iso8601 [offset option]}} | Yes | Yes |
{{$localDatetime rfc1123|iso8601 [offset option]}} | Yes | Yes |
{{$processEnv [%]envVarName}} | Yes | Yes |
{{$dotenv [%]variableName}} | No | Yes |
{{$aadToken [new] [public|cn|de|us|ppe] [<domain|tenantId>] [aud:<domain|tenantId>]}} | No | Yes |
Cookie support | No | Yes |
Proxy Support | No | Yes |
Http Language support | ||
.http and .rest file support | Yes | Yes |
Comments (// & #) | Partial - # only | Yes |
Command-line switches
For the most up-to-date documentation, visit the HttpRun Github repository.