处理具有重定向响应的API


handle API that has redirect response

我有一个案例,我需要发布数据到API端点有重定向响应,我的意思是,当我击中例如"xxx.com/api/v1/receive"与几个post参数,它应该重定向到一个页面,处理API提供的身份验证进一步访问,然后重定向回我的网站。

在我的代码中,我实现了这样的东西来发布数据

$data = ['key'=>'val'.etc...];
$post_data = http_build_query($data);
// open connection
$ch = curl_init();
// set option
curl_setopt($ch,CURLOPT_URL,$this->dev_url);
curl_setopt($ch,CURLOPT_POSTFIELDS,$post_data);
curl_setopt($ch,CURLOPT_FRESH_CONNECT,true);

// execute
$result = curl_exec($ch);

当我使用常规表单提交使用HTML表单和post一些参数它运行重定向的东西,就像它应该做的,但当我发布数据像我上面的代码,它没有响应。是否有可能得到响应(重定向响应)像html表单使用curl?

$data = ['key'=>'val'.etc...];
$result = file_get_contents ( "http://yoururl.com", false, stream_context_create ( array (
                    'http' => array (
                            'method' => 'POST',
                            'content' => json_encode ( $data ) 
                    ))));

可以查看var_dump($result);