接受GET / Post调用的HTTPtesting服务器

我需要一个实时testing服务器,通过HTTP GET接受我对基本信息的请求,也允许我POST(即使它没有做任何事情)。 这完全是为了testing目的。

这里就是一个很好的例子

它很容易接受GET请求,但我需要一个接受POST请求。

有谁知道我也可以发送愚蠢的testing消息的服务器?

http://www.posttestserver.com/

“在这里,你会发现一个服务器接收任何你想要给它的POST,并存储内容供你查看。

http://requestb.in类似于已经提到的工具,但有一个非常漂亮的用户界面。

RequestBin为您提供了一个URL,用于收集对其的请求,并让您以人性化的方式对其进行检查。 使用RequestBin来查看你的HTTP客户端正在发送什么,或者检查和debuggingwebhook请求。

看看PutsReq ,它和其他的类似,但是它也允许你用JavaScript编写你想要的回复。

创build一个免费的Web主机,并把下面的代码

  <h1>Request Headers</h1> <?php $headers = apache_request_headers(); foreach ($headers as $header => $value) { echo "<b>$header:</b> $value <br />\n"; } ?> 

或者只是访问这些网站

  1. http://greensuisse.zzl.org/product/dump/dump.php
  2. http://www.newburghschools.org/testfolder/dump.php

我创build了一个开放源代码的可以在几分钟内运行的本地testing服务器。 你可以创build新的API,定义你自己的回应,并以任何你想要的方式破解它。

Github链接 : https : //github.com/prabodhprakash/localTestingServer

https://www.mockable.io 。 获取terminal无需login(24小时临时帐户)

我不确定是否有人会用这么多的痛苦来testingGET和POST调用。 我拿了Python Flask模块,写了一个类似@Robert共享的函数。

 from flask import Flask, request app = Flask(__name__) @app.route('/method', methods=['GET', 'POST']) @app.route('/method/<wish>', methods=['GET', 'POST']) def method_used(wish=None): if request.method == 'GET': if wish: if wish in dir(request): ans = None s = "ans = str(request.%s)" % wish exec s return ans else: return 'This wish is not available. The following are the available wishes: %s' % [method for method in dir(request) if '_' not in method] else: return 'This is just a GET method' else: return "You are using POST" 

当我运行这个,这个如下:

 C:\Python27\python.exe E:/Arindam/Projects/Flask_Practice/first.py * Restarting with stat * Debugger is active! * Debugger PIN: 581-155-269 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit) 

现在让我们尝试一些调用。 我正在使用浏览器。

http://127.0.0.1:5000/method

这只是一个GET方法

http://127.0.0.1:5000/method/NotCorrect

这个愿望是不可用的。 以下是可用的愿望:['application','args','authorization','blueprint','charset','close','cookies','data','date','endpoint','environ ','文件','表单','标题','主机','json','方法','mimetype','模块','path','杂注','范围','引用者', 'scheme','shallow','stream','url','values']

http://127.0.0.1:5000/method/environ

{'wsgi.multiprocess':False,'HTTP_COOKIE':'csrftoken = YFKYYZl3DtqEJJBwUlap28bLG1T4Cyuq','SERVER_SOFTWARE':'Werkzeug / 0.12.2','SCRIPT_NAME':'','REQUEST_METHOD':'GET','PATH_INFO': '/ method / environ','SERVER_PROTOCOL':'HTTP / 1.1','QUERY_STRING':'','werkzeug.server.shutdown':,'HTTP_USER_AGENT':'Mozilla / 5.0(Windows NT 6.1; WOW64)AppleWebKit / 537.36(KHTML,如Gecko)Chrome / 54.0.2840.71 Safari / 537.36','HTTP_CONNECTION':'keep-alive','SERVER_NAME':'127.0.0.1','REMOTE_PORT':49569,'wsgi.url_scheme':' http','SERVER_PORT':'5000','werkzeug.request':,'wsgi.input':,'HTTP_HOST':'127.0.0.1:5000','wsgi.multithread':False,'HTTP_UPGRADE_INSECURE_REQUESTS':' 1','HTTP_ACCEPT':'text / html,application / xhtml + xml,application / xml; q = 0.9,image / webp, / ; q = 0.8','wsgi.version':(1,0) 'wsgi.run_once':False,'wsgi.errors':','mode'w'at 0x0000000002042150>,'REMOTE_ADDR':'127.0.0.1','HTTP_ACCEPT_LANGUAGE':'en-US,en; q = 0.8',' HTTP_ACCEPT_ENCODING':'gzip,deflate,sdch,br'}

如果您希望本地testing服务器接受任何URL并将请求转储到控制台,则可以使用node:

 const http = require("http"); const hostname = "0.0.0.0"; const port = 3000; const server = http.createServer((req, res) => { console.log(`\n${req.method} ${req.url}`); console.log(req.headers); req.on("data", function(chunk) { console.log("BODY: " + chunk); }); res.statusCode = 200; res.setHeader("Content-Type", "text/plain"); res.end("Hello World\n"); }); server.listen(port, hostname, () => { console.log(`Server running at http://localhost:${port}/`); }); 

将它保存在一个文件“echo.js”中,如下所示:

 $ node echo.js Server running at http://localhost:3000/ 

然后你可以提交数据:

 $ curl -d "[1,2,3]" -XPOST http://localhost:3000/foo/bar 

这将显示在服务器的标准输出中:

 POST /foo/bar { host: 'localhost:3000', 'user-agent': 'curl/7.54.1', accept: '*/*', 'content-length': '7', 'content-type': 'application/x-www-form-urlencoded' } BODY: [1,2,3] 

只要自己设置一个。 将此片段复制到您的networking服务器。


回声“<pre>”;
的print_r($ _ POST);
回声“</ pre>”;

只要发布你想要的页面。 完成。