auroraprj / web

Web auroraprj
GNU General Public License v3.0
0 stars 0 forks source link

Carga de imágenes para contenido de test #14

Closed jose-carmona closed 7 years ago

jose-carmona commented 7 years ago

Queda pendiente en #8 ya que no he conseguido carga una imagen mediante REST.

node_image.json en directorio tools --> al atacar con POST a entity/file restore 403 prohibido

jose-carmona commented 7 years ago

json:

{
  "langcode":[{"value":"en"}],
  "filename":[{"value":"logo.png"}],
  "filemime":[{"value":"image\/png"}],
  "data":[{"value":"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"}]
}

script bash para carga:

#-- obtenemos un token
token=`curl "http://$host/rest/session/token"`

find $content -name 'node*json' -exec curl --include --request POST --user $admin:$pass --header 'Content-type: application/json' --header "X-CSRF-Token: $token" --data-binary @{} http://$host/entity/file?_format=json \;

resultado:

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    43    0    43    0     0      9      0 --:--:--  0:00:04 --:--:--     9
HTTP/1.1 403 Forbidden
Date: Mon, 30 Jan 2017 18:02:04 GMT
Server: Apache
X-Powered-By: PHP/5.6.29
Cache-Control: must-revalidate, no-cache, private
X-UA-Compatible: IE=edge
Content-language: en
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
Expires: Sun, 19 Nov 1978 05:00:00 GMT
X-Generator: Drupal 8 (https://www.drupal.org)
Transfer-Encoding: chunked
Content-Type: application/json

{"message":""}
jose-carmona commented 7 years ago

Pues parece que tiene que ver con Drupal: Serialize file content (base64) to support REST GET/POST/PATCH on file entity

¿Alternativa?

jose-carmona commented 7 years ago

simple drush script:

<?php

use Drupal\file\Entity\File;

  $images = array();
  $files = glob(__DIR__ . '/web/media/*');
  foreach ($files as $file_name) {
    file_unmanaged_copy($file_name, 'public://' . basename($file_name));
    $image = File::create(array('uri' => 'public://' . basename($file_name)));
    $image->save();
    $images[basename($file_name)] = $image;
  }

sacado de multilingual_demos.install

jose-carmona commented 7 years ago

Me he topado con este proyecto que vendría de perlas pero no está portado a Drupal 8:

https://www.drupal.org/project/node_export