Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 更改soundCloud播放器的购买名称_Php_Api_Soundcloud - Fatal编程技术网

Php 更改soundCloud播放器的购买名称

Php 更改soundCloud播放器的购买名称,php,api,soundcloud,Php,Api,Soundcloud,我使用脚本(Oauth 2)并希望更改购买链接的标题(购买此曲目)。 我可以更新链接,但我不能更改链接的文本 我使用以下代码: $soundcould->put('https://api.soundcloud.com/tracks/56649403', array( 'track[purchase_url]' => 'http://website.com/', 'track[purchase_title]' => 'Support me' // whitout th

我使用脚本(Oauth 2)并希望更改购买链接的标题(购买此曲目)。
我可以更新链接,但我不能更改链接的文本

我使用以下代码:

$soundcould->put('https://api.soundcloud.com/tracks/56649403', array(
  'track[purchase_url]' => 'http://website.com/', 
  'track[purchase_title]' => 'Support me' // whitout this, it work
));
但它返回了一个错误:请求的URL响应为

当我删除
track[purchase\u title]
时,它会工作,所以问题在于这个变量

要更改链接标题,必须有特殊内容吗?
Soundcloud对其API的使用提出了限制?

除了更改变量
purchase\u title

之外,还可以创建一个新链接。我不确定,但请尝试。我认为这对你完全有帮助:-

请参阅指南:-

试试看

<?php
$track = <<<EOH
<track>
    <downloadable>true</downloadable>
    <purchase_url>http://website.com/</purchase_url>
    <purchase_title>true</purchase_title>
</track>
EOH;

try {
    $response = json_decode(
        $soundcloud->put(
            'tracks/1',
            $track,
            array(CURLOPT_HTTPHEADER => array('Content-Type: application/xml'))
        ),
        true
    );
} catch (Services_Soundcloud_Invalid_Http_Response_Code_Exception $e) {
    exit($e->getMessage());
}
getMessage());
}

这不起作用的原因是购买url和购买标题只能在高级帐户上更改。我将在文档中更清楚地说明这一点

下面是一个代码示例,它将为高级帐户实现这一技巧:

<?php
require_once 'Services/Soundcloud.php';

$client = new Services_Soundcloud('client_id', 'client_secret', 'redirect_uri');
$client->setAccessToken('your-access-token');

$track_url = 'https://api.soundcloud.com/tracks/52652023.json';
$response = json_decode($client->put($track_url, array(
  'track[purchase_url]' => 'http://website.com',
  'track[purchase_title]' => 'Support me'
)));
?>


如果这不起作用,问题就出在别处。给我发电子邮件,我可以帮助您进一步调试。

这将激活链接(它与我的代码一起工作),但您的代码不会更改链接的“标题”。请在my code true网站中尝试此xml。com/支持我与代码完全相同的答案
请求的URL以HTTP代码422响应。
:/如果没有
购买标题
,它可以工作(您的代码)!我认为它必须禁用改变这个变量的能力,也许你是对的。您必须使用免费或高级帐户。可能这个标题可以在高级帐户中更改。我有一个高级帐户!我可以更改
purchase\u url
,但不能更改
purchase\u title
(获取错误422),这显然很奇怪。我将用一个完整的、经过测试的代码示例编辑我的答案。如果不行,你能给我发电子邮件吗?奥斯曼在soundcloud.com实际上,它是有效的!我不知道为什么我的其他代码不起作用!非常感谢你宝贵的帮助,保罗;)