Frage

Es ist möglich, Base64 -codierte Bilder direkt hochzuladen, ohne es mit Facebook PHP SDK 3.1.1 zu speichern?

$facebook->setFileUploadSupport(true);
$facebook->api('/me/photos', 'POST', array(
    'source' => '@/mycoolpic.png', // No need to use FS, base64 encoded image
    'message' => "I'm cool",
));
War es hilfreich?

Lösung

Nein, nicht, dass ich mir der Suche bewusst oder herausgefunden habe. Stellen Sie sicher, dass Sie RealPath () um den Bildnamen um den absoluten Weg zum Bild geben.

Andere Tipps

Sie können in PHP wie folgt tun:

function base64_to_jpeg( $base64_string, $output_file ) {
  $ifp = fopen( $output_file, "wb" ); 
  fwrite( $ifp, base64_decode( $base64_string) ); 
  fclose( $ifp ); 
  return( $output_file ); 
}
$facebook->setFileUploadSupport(true);
$image = base64_to_jpeg( $your_base64_string, 'tmp.jpg' );
$args = array('message' => 'Some message');
$args['image'] = '@' . realpath( $image );
$data = $facebook->api('/your_user_id/photos', 'post', $args);
unlink($image);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top