Como faço para salvar uma imagem (camera) capturada no ionic 3/4 e salvar no servidor php usando http.post?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Como faço para salvar uma imagem (camera) capturada no ionic 3/4 e salvar no servidor php usando http.post?
Eae cara,
Você pode usar input file para pegar o base64 e enviar para seu Server(Php) la você converte esse base64 para salvar no formato da imagem e depois vc retorna o link da imagem.
Exemplo : function getBaseUrl () { var file = document.querySelector('input[type=file]')['files'][0]; var reader = new FileReader(); var baseString; reader.onloadend = function () { baseString = reader.result; }; console.log(baseString); }
Se caso vc não conseguir, bora trocar uma ideia
Boa tarde, Miguel! Como vai?
O que o Vinicius falou é uma ideia! O ponto principal é que o seu back-end em PHP precisa estar apto para receber o upload da foto!
Se ao seguir a ideia dada pelo Vinicius vc tiver algum problema é só mandar aqui que e a gente tenta te ajudar!
Grande abraço e bons estudos, meu aluno!
Acho que não ficou claro minha duvida.
Qual codigo/exemplo para enviar dados via http.post do ionic e receber eles no php.
Eu fiz um teste, mas os dados enviados no http.post não estão chegando no php.
No php
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, OPTIONS, POST');
header('Access-Control-Allow-Headers: Content-Type, Content-Range, Content-Disposition, Content-Description');
var_dump($_POST);No ionic
let headers = new Headers();
headers.append('Access-Control-Allow-Origin' , '*');
headers.append('Access-Control-Allow-Methods', 'POST, GET, OPTIONS, PUT');
headers.append('Content-Type', 'application/json');
let options = new RequestOptions({ headers:headers});
let paramData = {params: {teste:"valor-teste"};
let urlservidor = 'http://www.amornamedida.com.br/coach/index.php/app/services';
let retorno = this.http.post(
urlservidor, paramData, options)
.map((response) => this.parseResponse(response))
.do(data => console.log('Retorno API: ', data))
.catch(this.handleError)
.finally(() => {
});No ionic (debug chrome) da erro:Failed to load http://www.amornamedida.com.br/coach/index.php/app/services: Request header field Access-Control-Allow-Origin is not allowed by Access-Control-Allow-Headers in preflight response.
E no PHP var_dump($_POST), esta recebendo null/vazio
Miguel, no Ionic, experimente remover as linhas a seguir:
headers.append('Access-Control-Allow-Origin' , '*');
headers.append('Access-Control-Allow-Methods', 'POST, GET, OPTIONS, PUT');Depois tente enviar a requisição e veja o que ocorre.
Se o problema persistir é só mandar um alô aqui que eu continuo a tentar te ajudar!