2010-05-04 11 views

Odpowiedz

0

Oto mój kod w języku C#. Po prostu zgadywanie api jest podobne do php.

UserCredentials userCredientials = new UserCredentials("xxxxxx", "99999999999999"); 
    cloudConnection = new Connection(userCredientials); 
    cloudConnection.DeleteStorageItem(ContainerName, fileName); 
0

Upewnij się, że ustawisz kontener i zdefiniujesz dowolny folder sudo, którego używasz.

$my_container = $this->conn->get_container($cf_container); 
//delete file 
$my_container->delete_object($cf_folder.$file_name); 
0

Myślałam, że będę pisać tutaj, ponieważ nie jest odpowiedzią oznaczone jako poprawny, chociaż chciałbym przyjąć Matthew FLASCHEN odpowiedź za poprawny. Byłby to cały kod trzeba usunąć plik

<?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") ; 
    } 

Notatka, że „$ full_object_name” obejmuje „ścieżka” do pliku w pojemniku i nazwę pliku bez początkowego „/”. Dzieje się tak dlatego, że kontenery używają pseudo-hierarchicznych folderów/katalogów, a to, czym końcem jest nazwa pliku w kontenerze, jest ścieżka + nazwa pliku. aby uzyskać więcej informacji zobacz http://docs.rackspace.com/files/api/v1/cf-devguide/content/Pseudo-Hierarchical_Folders_Directories-d1e1580.html

0

pomocą metody zwanej DeleteObject z klasy CF_Container.

Metoda DeleteObject of CF_Container wymaga tylko jednego ciągu znaków nazwa_ obiektu. Te argumenty powinny być nazwą pliku do usunięcia.

zobacz przykład C# kod poniżej:

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); 

Uwaga Do not użyć DeleteObject z klasy * CF_Client *