Here is my php code to uplaod a xlsx file and protect it.
Missing something which is not working. Can anyone help !
//$bearer_token => Authentication token
//$sourceFolder => Folder where file exists
//$fileName => abdc.xlsx
$protectxlsx_url = "https://api.aspose.cloud/v3.0/cells/protect?password=123456";
$protectxlsx_headers = array(
"Content-Type: application/json",
"Accept: application/json",
"Authorization: Bearer ".$bearer_token."",
);
//var_dump(mime_content_type($sourceFolder.$fileName)); die;
$tmp_file = curl_file_create($sourceFolder.$fileName);
//$file_realpath = curl_file_create($fileSave);
$protectxlsx_ch = curl_init();
curl_setopt($protectxlsx_ch, CURLOPT_URL, $protectxlsx_url);
curl_setopt($protectxlsx_ch, CURLOPT_POST, true);
curl_setopt($protectxlsx_ch, CURLOPT_POSTFIELDS, $tmp_file);
curl_setopt($protectxlsx_ch, CURLOPT_HTTPHEADER, $protectxlsx_headers);
$protectxlsx_apiresult = curl_exec($protectxlsx_ch);
curl_close($protectxlsx_ch);
$protectxlsx_apiresult_jsondecode = json_decode($protectxlsx_apiresult, true);
//$protectxlsx_apiresult_jsondecode => not generating any data
@martinhorsley,
We suggest you use Aspose.Cells Cloud SDK for PHP.
Aspose.Cells Cloud SDK for PHP is open-source on GitHub.
Please check the following example code:
require_once(‘vendor\autoload.php’);
use \Aspose\Cells\Cloud\Api\LightCellsApi;
$cells = new LightCellsApi( getenv(“ProductClientId”),getenv(“ProductClientSecret”) );
$files = array (
‘DataSource’ => “D:/projects/aspose/examples/testdata/source/datasource.xlsx”,
‘AssemblyTest’ => “D:/projects/aspose/examples/testdata/source/assemblytest.xlsx”
);
$result = $cells->postProtect( $files, ‘12345’ );
$filename = $result->getFiles()[0]->getFilename() ;
$fileData = $result->getFiles()[0]->getFileContent() ;
$ptr = fopen($filename, ‘wb’);
fwrite($ptr, base64_decode($fileData));
fclose($ptr);
Thanks,
But the issue is everytime i Check for config.
It doesn’t returning accessToken
$configDtls = $cells->getConfig();
var_dump($configDtls); die;
Please can you verify ?
There is issue with LightCellsApi Object creation.
Some issue found like: On Line 87,97 of LightCellsApi.php $this->config ->setAccessToken has space in config call Like “config ->”. I have removed the space. But still not generating any token. Can you confirm ?
Thanks Again
@martinhorsley,
We have tested your issues and can get an access token. Please try the example code.
require_once(‘vendor\autoload.php’);
use \Aspose\Cells\Cloud\Api\LightCellsApi;
$cells = new LightCellsApi( getenv(“ProductClientId”),getenv(“ProductClientSecret”) );
print($cells->getConfig()->getAccessToken());
Please check the following question which cause can not access the token:
- Whether can access https://api.aspose.cloud normally. The following command is to test cells cloud services statue.
curl http://api.aspose.cloud/v3.0/cells
- Check that the entered client ID and client secret are correct. Please read the quick start online document about how to get the client ID and client secret.