androidking
androidking

Reputation: 207

No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:4200' is therefore not allowed access

In my angular project I am calling rest api but when i call i got cors error .i tried to add header but i cant resolve . itride all but failed to resolve .

how to add cors in angular 2(please provide compleate import and code) should i have to enablecode in my restapi page which is in server

see my angular2 project which in localhostL:4200

import {Injectable} from '@angular/core';
import 'rxjs/Rx';
import { Http , Response, Headers, RequestOptions } from'@angular/http';
import {Observable} from 'rxjs/Rx';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/catch';

import 'rxjs/add/observable/throw';

@Injectable()
 export class LoginService {
 constructor(private _http:Http){}

  getCurrentTime(){
 var header = new Headers();
 header.append('contentType','application/json; charset=utf-8');
 header.append('Accept','application/json');
 header.append('Access-Control-Allow-Origin', '*');
var option = new RequestOptions();
 option.headers = header;
 return 
this._http.get('http://is.com/equityjs.php',option)
.map(res=>res.json());

 }

}

and my php page

    <?php
  include_once 'config.php';
$connection = mysql_connect($servername, $username, $passwd)or die("not 
   comnnection"); // Establishing Connection with Server
mysql_select_db($db); // Selecting Database from Server

$result=mysql_query("SELECT * FROM equity ORDER BY MONTH(Date) DESC, DAY(DATE) DESC ,TIME(DATE)");
$response["equty"] = array();  

    while($row = mysql_fetch_assoc($result))    {

        $stuff= array();

        /* ADD THE TABLE COLUMNS TO THE JSON OBJECT CONTENTS */
        $bse["title"] = $row['title'];
         $bse["string"] = $row['equity_string'];
         $bse["date"] = $row['date'];
        $bse["target"]=$row['target'];
            $bse["target2"]=$row['target2'];
          $bse["bse_id"]=$row['bse_id'];
        $bse["stoploss"]=$row['stoploss'];
            $bse["position"]=$row['selectreq'];
        $bse["timeframe"]=$row['timeframe'];
        $bse["status"]=$row['status'];
        array_push($response["equty"], $bse);

        // $response[] = $row;
    }
    // success

    echo(json_encode($response));


/* CLOSE THE CONNECTION */
  mysql_close();
?>

Upvotes: 0

Views: 863

Answers (1)

Holzhey
Holzhey

Reputation: 381

You must allow origin in the server side, try this in your code:

 <?php
 header("Access-Control-Allow-Origin: *");

Upvotes: 1

Related Questions