محمد
6 سال پیش توسط محمد مطرح شد
0 پاسخ

مهاجرت از انگولار ۲ به ۶

سلام دوستان من یک کد ارتباط با http دارم در انگولار ۲ میخام به انگولار ۶ بروز کنم . چونکه در انگولار جدید ساتفاده از http منسوخ شده و جای اون httpclient اومده .
این کلاس میخام بصورت Global باشه مثل چیزی که الان هست. بایستی چکار کنم؟
ممنون میشم کد را اصلاح کنید.

‍‍‍```
import { Injectable } from '@angular/core';
import { Http ,Headers, Request, RequestOptions, RequestMethod, Response, ResponseContentType } from '@angular/http';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/catch';
import 'rxjs/add/observable/throw';
import { Observable } from 'rxjs/Observable';
import { environment } from '../../environments/environment';
import { AuthService } from './auth.service';

@Injectable()
export class ApiService {

private baseUrl = environment.apiUrl;

constructor(private http: Http, private auth: AuthService) { }

get(url: string) {
return this.request(url, RequestMethod.Get);
}

post(url: string, body: Object) {
return this.request(url, RequestMethod.Post, body);
}

put(url: string, body: Object) {
return this.request(url, RequestMethod.Put, body);
}

fileUploadPut(url: string, body: Object) {
return this.imageUploadRequest(url, RequestMethod.Put, body);
}

fileUploadPost(url: string, body: Object) {
return this.imageUploadRequest(url, RequestMethod.Post, body);
}
imageGet(url:string){
return this.getImage(url,RequestMethod.Get)
}

delete(url: string) {
return this.request(url, RequestMethod.Delete);
}

request(url: string, method: RequestMethod, body?: Object) {
const headers = new Headers();

headers.append('Content-Type', 'application/json');
headers.append('Authorization', `${this.auth.getToken()}`);

const requestOptions = new RequestOptions({
  url: `${this.baseUrl}/${url}`,
  method: method,
  headers: headers
});

if (body) {
  requestOptions.body = body;
}

const request = new Request(requestOptions);

return this.http.request(request)
  .map((res: Response) => res.json())
  .catch((res: Response) => this.onRequestError(res));

}

onRequestError(res: Response) {
const statusCode = res.status;
const body = res.json();

const error = {
  statusCode: statusCode,
  error: body.error
};

console.log(error);

return Observable.throw(error);

}

}


ثبت پرسش جدید

به همدیگه کمک کنیم

به محمد کمک کنید تا مشکل خودش را حل کند؛ این‌طور می‌توانیم با هم پیشرفت کنیم.

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام