Mi chiedevo come faccio a rimuovere un file da Cloudfiles di Rackspace usando le loro API?Come faccio a rimuovere un file dai Cloudfiles di Rackspace con la loro api?
Im utilizzando php.
Devan
Mi chiedevo come faccio a rimuovere un file da Cloudfiles di Rackspace usando le loro API?Come faccio a rimuovere un file dai Cloudfiles di Rackspace con la loro api?
Im utilizzando php.
Devan
Utilizzare il metodo di CF_Container delete_object.
Ecco il mio codice in C#. Solo indovinando l'api è simile per php.
UserCredentials userCredientials = new UserCredentials("xxxxxx", "99999999999999");
cloudConnection = new Connection(userCredientials);
cloudConnection.DeleteStorageItem(ContainerName, fileName);
Assicurarsi di impostare il contenitore e definire qualsiasi cartella sudo in uso.
$my_container = $this->conn->get_container($cf_container);
//delete file
$my_container->delete_object($cf_folder.$file_name);
ho pensato di postare qui dato che non c'è una risposta contrassegnata come quella giusta, anche se avrei accettato Matthew Flaschen risposta come quella corretta. Questo sarebbe tutto il codice è necessario eliminare il file
<?php
require '/path/to/php-cloudfiles/cloudfiles.php';
$username = 'my_username';
$api_key = 'my_api_key';
$full_object_name = 'this/is/the/full/file/name/in/the/container.png';
$auth = new CF_Authentication($username, $api_key);
$auth->ssl_use_cabundle();
$auth->authenticate();
if ($auth->authenticated())
{
$this->connection = new CF_Connection($auth);
// Get the container we want to use
$container = $this->connection->get_container($name);
$object = $container->delete_object($full_object_name);
echo 'object deleted';
}
else
{
throw new AuthenticationException("Authentication failed") ;
}
Nota che il "$ full_object_name" include il "percorso" per il file nel contenitore e il nome del file senza iniziale '/'. Questo perché i contenitori usano una cartella/directory Pseudo-Gerarchiche e quale risultato finale è il nome del file nel contenitore è il percorso + nomefile. Per maggiori informazioni visita http://docs.rackspace.com/files/api/v1/cf-devguide/content/Pseudo-Hierarchical_Folders_Directories-d1e1580.html
utilizzare il metodo chiamato DeleteObject dalla classe CF_Container.
Il metodo DeleteObject di CF_Container richiede un solo argomento stringa nome_oggetto. Questo argomento dovrebbe essere il nome file da eliminare.
vedere l'esempio di codice C# sotto:
string username = "your-username";
string apiKey = "your-api-key";
CF_Client client = new CF_Client();
UserCredentials creds = new UserCredentials(username, apiKey);
Connection conn = new CF_Connection(creds, client);
conn.Authenticate();
var containerObj = new CF_Container(conn, client, container);
string file = "filename-to-delete";
containerObj.DeleteObject(file);
Nota Non tiratevi utilizzare il DeleteObject dalla classe * * CF_Client