Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Erro ao dar Get no servidor

Na aula 6 (Vídeo 2) do Curso Ionic 2 parte 1 ao dar Get no servidor obtenho o seguinte erro:

"No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8100' is therefore not allowed access. The response had HTTP status code 500."

Qual a solução para isso?

import { Component } from '@angular/core';
import { NavController, NavParams, AlertController, Alert } from 'ionic-angular';
import {Carro} from '../../domain/carro/carro';
import {Http} from '@angular/http';

@Component({
  templateUrl: 'cadastro.html'
})
export class CadastroPage {

  public carro: Carro;
  public precoTotal: number;

  public nome: string;
  public endereco: string;
  public email: string;
  public data: string = new Date().toISOString();
  private _alerta: Alert;

  constructor(
      public navCtrl: NavController, 
      public navParams: NavParams,
      private _http: Http,
      private _alertCtrl: AlertController) {

    this.carro = this.navParams.get('carro')
    this.precoTotal = this.navParams.get('precoTotal')

    this._alerta = this._alertCtrl.create({
      title:'Aviso',
      buttons:[{text: 'OK'}]
    })
  }

  agenda(){
     this._http
    .get(`https://aluracar.herokuapp.com/salvarpedido?carro=${this.carro.nome}&preco=${this.precoTotal}&nome=${this.nome}&endereco${this.endereco}&email=${this.email}&dataAgendamento=${this.data}`)
    .toPromise()
    .then(() => { 
      this._alerta.setSubTitle('Agendamento realizado com sucesso!');
      this._alerta.present();
    })
    .catch(err => {
      console.log(err);
      this._alerta.setSubTitle('Não foi possível realizar o agendamento. Por favor tente mais tarde.');
      this._alerta.present();
    });

  }


}
2 respostas
solução!

Há um erro na sua URL construída dinamicamente. É bem chatinha mesmo de digitar. Veja:

&endereco$

Esta faltando um igual. Quando o endereço da API esta errado, ele emite mesmo essa mensagem de erro.

Só conferir o endereço ou copiar da explicação.

Sucesso e bom estudo meu aluno!

Que vergonha ... como não vi isso? Obrigado Flavio. Obs. Estou adorando o curso. Didática 100%.