我需要一个实时测试服务器,它通过HTTP GET接受我对基本信息的请求,并允许我POST(即使它真的什么都不做)。这完全是为了测试目的。

这里有一个很好的例子。它很容易接受GET请求,但我需要一个接受POST请求以及。

有人知道我也可以发送虚拟测试消息的服务器吗?


当前回答

http://requestb.in类似于前面提到的工具,也有一个非常漂亮的UI。

RequestBin为您提供了一个URL,该URL将收集向它发出的请求,并让您以一种人性化的方式检查它们。 使用RequestBin查看HTTP客户端发送的内容或检查和调试webhook请求。

虽然它已于2018年3月21日停产。

由于持续的滥用,我们已经停止了RequestBin的公开托管版本,这使得它很难保持站点的可靠运行。请参阅有关设置自己的自托管实例的说明。

其他回答

Webhook Tester是一个很好的工具:https://webhook.site (GitHub)

对我来说很重要的是,它显示了请求者的IP,当您需要将一个IP地址列入白名单但不确定它是什么时,这很有帮助。

https://www.mockable.io。它有很好的功能,无需登录就可以获得端点(24小时临时帐户)

我不知道为什么这里所有的答案都让一个很简单的工作很辛苦!

当HTTP上有一个请求时,实际上客户端会发送一个HTTP_MESSAGE到服务器(阅读HTTP_MESSAGE是什么),你可以用2个简单的步骤创建一个服务器:

安装netcat: 在许多基于unix的系统中,你已经安装了这个,如果你有windows只是谷歌它,安装过程真的很简单,你只需要一个nc.exe文件,然后你应该复制这个nc.exe文件的路径到你的path环境变量,并检查nc -h是否一切正常 创建一个监听localhost:12345的服务器: 只要在你的终端上输入nc -l -p 12345,一切就完成了!(在mac nc -l 12345 tnx Silvio Biasiol)


现在你有一个服务器在http://localhost:12345上监听,例如,如果你是一个js开发人员,你可以用axios发出post请求:

axios.post('http://localhost:12345', { firstName: 'Fred' })

或者制作自己的xhr,或者在HTML文件中制作表单并将其提交给服务器,例如:

<form action="http://localhost:12345" method="post">

或者使用curl或wget等进行请求。然后检查你的终端,一个原始的HTTP_MESSAGE应该出现在你的终端上,你可以开始你的快乐黑客;)

你自己设置一个就可以了。将这个片段复制到您的web服务器。


echo "<pre>";
print_r($_POST);
echo "</pre>";

把你想要的贴在那个页面上。完成了。

你可能不需要任何网站,只需要打开浏览器,按F12来访问开发人员工具>控制台,然后在控制台写一些JavaScript代码来做到这一点。

下面我将分享一些实现这一目标的方法:

对于GET请求: *。使用jQuery:

$.get("http://someurl/status/?messageid=597574445", function(data, status){
      console.log(data, status);
});

POST请求:

使用jQuery $.ajax:

var url= "http://someurl/",
          api_key = "6136-bc16-49fb-bacb-802358",
          token1 = "Just for test",
          result;
    $.ajax({
            url: url,
            type: "POST",
            data: {
              api_key: api_key,
              token1: token1
            },
          }).done(function(result) {
                  console.log("done successfuly", result);
          }).fail(function(error) {
              console.log(error.responseText, error);
          });

使用jQuery,添加和提交

var merchantId = "AA86E",
    token = "4107120133142729",
    url = "https://payment.com/Index";

var form = `<form id="send-by-post" method="post" action="${url}">
            <input id="token" type="hidden" name="token" value="${merchantId}"/>
            <input id="merchantId" name="merchantId" type="hidden" value="${token}"/>
            <button type="submit" >Pay</button>
            </div>
            </form> `; 
    $('body').append(form);
    $("#send-by-post").submit();//Or $(form).appendTo("body").submit();

使用纯JavaScript:

`var api_key = "73736-bc16-49fb-bacb-643e58",
    recipient = "095552565",
    token1 = "4458",
    url = 'http://smspanel.com/send/';`

``var form = `<form id="send-by-post" method="post" action="${url}">
              <input id="api_key" type="hidden" name="api_key" value="${api_key}"/>
              <input id="recipient" type="hidden" name="recipient"  value="${recipient}"/>
              <input id="token1" name="token1" type="hidden" value="${token1}"/>
              <button type="submit" >Send</button>
        </div>
    </form>`;``

document.querySelector("body").insertAdjacentHTML('beforeend',form);
document.querySelector("#send-by-post").submit();

甚至使用ASP。Net:

var url = "https://Payment.com/index";
Response.Clear();
var sb = new System.Text.StringBuilder();

sb.Append("<html>");
sb.AppendFormat("<body onload='document.forms[0].submit()'>");
sb.AppendFormat("<form action='{0}' method='post'>", url);
sb.AppendFormat("<input type='hidden' name='merchantId' value='{0}'>", "C668");
sb.AppendFormat("<input type='hidden' name='Token' value='{0}'>", "22720281459");
sb.Append("</form>");
sb.Append("</body>");
sb.Append("</html>");
Response.Write(sb.ToString());
Response.End();