【问题标题】:Posting parameters to a url using the POST method without using a form使用 POST 方法在不使用表单的情况下将参数发布到 url
【发布时间】:2010-11-17 16:12:59
【问题描述】:

我想使用 POST 方法将参数发布到 URL,但我不能使用表单。即使我确实使用了表单,它也必须在没有用户交互的情况下自动发布。这可能吗?我该怎么做?

【问题讨论】:

标签: javascript forms post


【解决方案1】:

如果您尝试链接到某个东西,而不是从代码中执行,您可以通过以下方式重定向您的请求:http://getaspost.appspot.com/

【讨论】:

    【解决方案2】:

    使用jQuery.post

    $.post(
      "http://theurl.com",
      { key1: "value1", key2: "value2" },
      function(data) {
        alert("Response: " + data);
      }
    );
    

    【讨论】:

      【解决方案3】:

      cURL 是一种选择,也可以使用 Ajax,尽管使用前端解决后端问题并不那么整洁。

      一篇关于不使用 cURL 的非常有用的帖子是:http://netevil.org/blog/2006/nov/http-post-from-php-without-curl

      执行此操作的代码(未经测试,未经改进,来自博客文章):

      function do_post_request($url, $data, $optional_headers = null)
      {
         $params = array('http' => array(
                      'method' => 'POST',
                      'content' => $data
                   ));
         if ($optional_headers !== null) {
            $params['http']['header'] = $optional_headers;
         }
         $ctx = stream_context_create($params);
         $fp = @fopen($url, 'rb', false, $ctx);
         if (!$fp) {
            throw new Exception("Problem with $url, $php_errormsg");
         }
         $response = @stream_get_contents($fp);
         if ($response === false) {
            throw new Exception("Problem reading data from $url, $php_errormsg");
         }
         return $response;
      }
      

      【讨论】:

        【解决方案4】:

        您可以使用 JavaScript 和 XMLHTTPRequest (AJAX) 在不使用表单的情况下执行 POST。检查this link。请记住,您需要在浏览器中启用 JavaScript。

        【讨论】:

        • 如果 URL 在另一个域中,这将起作用。对吗?
        【解决方案5】:

        如何在不使用 cURL 的情况下直接使用 PHP:http://netevil.org/blog/2006/nov/http-post-from-php-without-curl

        【讨论】:

          【解决方案6】:

          可以使用 CURL 或 AJAX 来完成。响应与答案同样神秘。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-07-24
            • 2012-03-27
            • 2015-07-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多