Ayuda API-REST

cancel
Showing results for 
Search instead for 
Did you mean: 
nalvarez_colesc
Active Member II

Ayuda API-REST

Bueno, sigo renegando con la API-REST de Alfresco, al momento vengo avanzando pero me cuesta mucho conseguir resultados. Alguno de los que tenga experiencia, podria ayudarme?

La situacion es asi:

Quiero crear un nuevo documento y como contenido crear subir un documento. Por POSTMAN lo logro ok. Ahora, desde angular, engo un error:

core.js:15724 ERROR

  1. HttpErrorResponse {headers: HttpHeaders, status: 401, statusText: "No Autorizado", url: "http://localhost:8080/alfresco/api/-default-/publi…f_ticket=9114df37510d146f1b6fe1da81710a542319e318", ok: false, …}
    1. error: {error: {…}}
    2. headers: HttpHeaders {normalizedNames: Map(0), lazyUpdate: null, lazyInit: ƒ}
    3. message: "Http failure response for http://localhost:8080/alfresco/api/-default-/public/alfresco/versions/1/nodes/-my-/children?alf_ticket=9114df37510d146f1b6fe1da81710a542319e318: 401 No Autorizado"
    4. name: "HttpErrorResponse"
    5. ok: false
    6. status: 401
    7. statusText: "No Autorizado"
    8. url: "http://localhost:8080/alfresco/api/-default-/public/alfresco/versions/1/nodes/-my-/children?alf_ticket=9114df37510d146f1b6fe1da81710a542319e318"
    9. __proto__: HttpResponseBase

Les paso un poco de mi codigo, para ver si alguien puede ayudarme..

Servicio:

import { Injectable } from '@angular/core';
import { HttpClient, HttpHeaders } from '@angular/common/http';
import { Observable } from 'rxjs';
import { map } from 'rxjs/operators';

@Injectable({
providedIn: 'root'
})
export class AlfrescoService {

public archivoSubir: any;
public url: 'http://localhost:8080/alfresco/api/-default-/public/alfresco/versions/1/nodes/-my-/children';

constructor( private peticion: HttpClient ) { }

subir( ): Observable<any> {
// console.log(this.archivoSubir);

// tslint:disable-next-lineSmiley Tonguerefer-const
let options;
options = {
headers:
{ 'postman-token': 'e53def2c-fd31-1a6c-89e7-79327bd4dc97',
'cache-control': 'no-cache',
// tslint:disable-next-lineSmiley Surprisedbject-literal-key-quotes
authorization: 'Basic YWRtaW46YWRtaW5wd2Q=',
'content-type': 'multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW'},
formData:
{ filedata:
{ value: '/home/nalvarez/logo2.jpg")',
options:
{ filename: 'logo2.jpg',
contentType: null } },
name: 'dios.jpg',
relativePath: '/soin' } };
console.log('Llego a la peticion !!!');
return this.peticion.post('http://localhost:8080/alfresco/api/-default-/public/alfresco/versions/1/nodes/-my-/children', options) ;
}

el objetivo final seria poder que el usuario cargue el documento....

Componente:

import { Component, OnInit } from '@angular/core';
import { AlfrescoService } from '../../servicios/alfresco.service';

@Component({
selector: 'app-subir',
templateUrl: './subir.component.html',
styleUrls: ['./subir.component.css']
})
export class SubirComponent implements OnInit {


constructor( private alfresco: AlfrescoService ) { }

ngOnInit() {
}

suboFile() {

this.alfresco.subir().subscribe( respuesta => {
console.log(respuesta);
return console.log('pase peticion');
});

}


}

El objetivo seria sencillo, que el usuario pueda subir un documento y este se registre en mi repositorio. Estoy queriendo hacerlo con API-REST y no con ADF por decisión de mi empresa empleadora...

2 Replies
angelborroy
Alfresco Employee

Re: Ayuda API-REST

Sigo pensando que es una mala decisión.

En cualquier caso, aquí tienes un ejemplo de invocación a un método REST usando la autenticación por defecto de Alfresco:

alfresco-esign-cert/signature.service.ts at master · keensoft/alfresco-esign-cert · GitHub 

Hyland Developer Evangelist
nalvarez_colesc
Active Member II

Re: Ayuda API-REST

Hola Angel, conincido con vos, propuse ir directamente con ADF pero me pidieron que haga pruebas con la API-Rest, por el momento es todo prueba de concepto.... Mira sino, las pruebas que estoy realizando =)

Por el momento, esta es toda la App jajajajaja...

Agradezco tu respuesta y tiempo...