Quickly mock away any webservice using HttPlaceholder. HttPlaceholder lets you specify what the request should look like and what response needs to be returned.
Deploy this app to Linode with a free $100 credit!
HttPlaceholder lets you stub away any HTTP webservice.
It was thought up while I was working at a company which had many interconnected webservices. The development process was very painful, because it meant all the other webservices should also be started on my local dev PC, or I had to use the "development" environment, which did not work for half of the time. HttPlaceholder fills this gap nicely.
HttPlaceholder:
Also visit the website: https://httplaceholder.org/
Linux, Windows and Mac are supported.
Follow these steps to install / update HttPlaceholder. If you update HttPlaceholder, make sure to read the changelog to see if there are no breaking changes.
Install on Windows
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/dukeofharen/httplaceholder/master/scripts/Install-Windows.ps1'))
Install on Linux
curl -o- https://raw.githubusercontent.com/dukeofharen/httplaceholder/master/scripts/install-linux.sh | bash
Install on Mac
curl -o- https://raw.githubusercontent.com/dukeofharen/httplaceholder/master/scripts/install-mac.sh | bash
Docker
HttPlaceholder has a Docker image; it can be found here.
Run the following command to run a basic HttPlaceholder container: docker run -p 5000:5000 dukeofharen/httplaceholder:latest
Install as .NET tool
dotnet tool install --global HttPlaceholder
stub.yaml
).- id: situation-01
conditions:
method: GET
url:
path:
equals: /users
query:
id:
equals: 12
filter:
equals: first_name
response:
statusCode: 200
text: |
{
"first_name": "John"
}
headers:
Content-Type: application/json
Open the terminal in the folder you've added the stub.yaml
file and run the following command: httplaceholder
.
HttPlaceholder will now start and will load the stubs in the current folder.
Perform a specific HTTP call to HttPlaceholder so your provided response will be returned.
curl "http://localhost:5000/users?id=12&filter=first_name" -D-
For Windows (uses Powershell):
(Invoke-WebRequest "http://localhost:5000/users?id=12&filter=first_name").RawContent
You can view and inspect the performed requests in the user interface at http://localhost:5000/ph-ui.
For more sophisticated examples, go to the samples to view samples for all supported HTTP condition checkers and response writers. Learn more about HttPlaceholder by reading the documentation.
See the open issues for a list of proposed features (and known issues).
Reach out to the maintainer at one of the following places:
If you want to say thank you or/and support active development of HttPlaceholder:
First off, thanks for taking the time to contribute! Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make will benefit everybody else and are greatly appreciated.
We have set up a separate document containing our contribution guidelines.
Thank you for being involved!
The original setup of this repository is by dukeofharen (https://ducode.org).
For a full list of all authors and contributors, check the contributor's page.
HttPlaceholder follows good practices of security, but 100% security can't be granted in software. HttPlaceholder is provided "as is" without any warranty. Use at your own risk.
For more info, please refer to the security.
This project is licensed under the MIT license.
See LICENSE for more information.
Please login to review this project.
No reviews for this project yet.
Comments (0)
Please login to join the discussion on this project.