使用Azure Media Services REST API和PHP创建资产时出错

时间:2013-02-20 13:36:05

标签: php rest azure azure-media-services

执行用于创建资产的php代码时出现HTTP Code 301错误:

 public function request($arrData = array()){
            $ch = curl_init();
            $arrHeader = array(
                'Authorization: Bearer '.$this->strToken,

            );
        echo 'Call API:'.$this->strUrl."\n";
        curl_setopt($ch, CURLOPT_URL, $this->strUrl);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $arrHeader);
        //curl_setopt($ch, CURLOPT_HEADER, true);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
        if (!empty($data)){
            curl_setopt($ch, CURLOPT_POSTFIELDS, $this->generateData($arrData));
        }
        $data = curl_exec($ch);
       The value of strUrl is: https://media.windows.net/API/Assets

3 个答案:

答案 0 :(得分:0)

我不确定您使用的是正确的网址。这个对我有用。

https://wamsbluclus001rest-hs.cloudapp.net/API/

答案 1 :(得分:0)

PHP中的问题是,您似乎没有遵循连接到API时发生的重定向。它在REST API的MSDN文档中有记录。请查看此MSDN参考文档,该文档说明了如何遵循重定向:

http://msdn.microsoft.com/en-us/library/jj129576.aspx

  

连接到媒体服务URI 媒体服务的根URI为https://media.windows.net/API/。你最初应该   连接到此URI,如果您回复301重定向,   您应该对新URI进行后续调用。另外,不要   在您的请求中使用任何自动重定向/跟随逻辑。 HTTP动词和   请求正文将不会转发到新的URI。

答案 2 :(得分:0)

在C#中,您将找到一个重定向处理的工作示例: http://createassettask.codeplex.com/SourceControl/changeset/view/21236#458379