cURL上的-u标志实际上是什么?

时间:2016-02-16 20:56:43

标签: curl

我正在查看Stripe的cURL示例,以获取有关事件的信息。

他们让我这样做:

class Car {

    public function __construct() {

        if ( $this->check() ) {

         add_action('template_include', array( $this, 'get_template') );

         // Does not work
         add_action( 'wp_enqueue_scripts', array( $this, 'get_scripts') );
         add_action( 'wp_enqueue_scripts', array( $this, 'get_styles') );

        }

        // Works
        add_action( 'wp_enqueue_scripts', array( $this, 'get_scripts') );
        add_action( 'wp_enqueue_scripts', array( $this, 'get_styles') );


    }

    public function check() {
        return ( isset( $_GET['foo'] ) && $_GET['foo'] == true );
    }

    public function get_template() {
        return locate_template( array( 'foo.php' ) );
    }


}

$car = new Car();

cURL的文档声明-u执行USER:PASSWORD。

当我尝试将其作为-d或查询发送时?Stripe的API说我缺少标题。这似乎不对。

我也不明白用户名之后缺少密码。如果我发送没有“:”的cURL,系统会提示我输入密码。点击输入(没有输入字符),得到预期的响应。

那么,究竟是什么-u这样做我可以在我的代码中模仿这个调用?

1 个答案:

答案 0 :(得分:21)

curl -uusername:password字符串编码为base-64字符串,该字符串在Authorization标头中传递,如下所示:

GET / HTTP/1.1
Host: example.com
Accept: text/html
Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=

这不容易浏览,但它也不是加密。拥有base 64 decoder的任何人都可以看到用户名和密码,因此请务必设置HTTPS。

您的HTTP库可能有一个为您执行此操作的功能。