summaryrefslogtreecommitdiff
path: root/recipeBuddy/src/app/REST_service/backend.service.ts
diff options
context:
space:
mode:
Diffstat (limited to 'recipeBuddy/src/app/REST_service/backend.service.ts')
-rw-r--r--recipeBuddy/src/app/REST_service/backend.service.ts51
1 files changed, 51 insertions, 0 deletions
diff --git a/recipeBuddy/src/app/REST_service/backend.service.ts b/recipeBuddy/src/app/REST_service/backend.service.ts
new file mode 100644
index 0000000..7834cb5
--- /dev/null
+++ b/recipeBuddy/src/app/REST_service/backend.service.ts
@@ -0,0 +1,51 @@
+import { Injectable } from '@angular/core'
+import { HttpClient, HttpHeaders } from '@angular/common/http'
+import { Observable, throwError } from 'rxjs'
+import { retry, catchError, map } from 'rxjs/operators'
+import { Recipe } from '../DataModels/recipe'
+
+
+export interface Status {
+ Code: number;
+ Msg: string;
+}
+export interface MsgList {
+ Status: Status;
+ Data: number[];
+}
+
+export interface Msg {
+ Status: Status;
+ Data: Recipe;
+}
+
+
+@Injectable({ providedIn: 'root' })
+
+/* BackendService class based on tutorial at:
+ * <https://www.positronx.io/angular-8-httpclient-http-tutorial-build-consume-restful-api/>
+ */
+export class BackendService {
+ apiURL = 'http://api.recipebuddy.xyz:8888'
+
+ constructor( private http: HttpClient)
+ {
+ }
+
+ httpOptions = {headers: new HttpHeaders(
+ {'Content-Type':'application/json'}
+ )}
+
+
+ handleError(error) {
+ let errMsg = '';
+ if (error.error instanceof ErrorEvent) {
+ errMsg = error.error.message;
+ } else {
+ errMsg = 'Error API';
+ }
+ console.log(errMsg)
+ window.alert(errMsg)
+ return throwError(errMsg);
+ }
+}