{"id":7681,"date":"2025-02-02T03:22:11","date_gmt":"2025-02-02T03:22:11","guid":{"rendered":"https:\/\/cciedump.spoto.net\/arabicblog\/blog\/%d9%83%d9%8a%d9%81%d9%8a%d8%a9-%d8%af%d9%85%d8%ac-angular-4-%d9%85%d8%b9-%d9%88%d8%a7%d8%ac%d9%87%d8%a7%d8%aa-%d8%a8%d8%b1%d9%85%d8%ac%d8%a9-%d8%aa%d8%b7%d8%a8%d9%8a%d9%82%d8%a7%d8%aa-restful-apis\/"},"modified":"2025-02-02T03:22:11","modified_gmt":"2025-02-02T03:22:11","slug":"%d9%83%d9%8a%d9%81%d9%8a%d8%a9-%d8%af%d9%85%d8%ac-angular-4-%d9%85%d8%b9-%d9%88%d8%a7%d8%ac%d9%87%d8%a7%d8%aa-%d8%a8%d8%b1%d9%85%d8%ac%d8%a9-%d8%aa%d8%b7%d8%a8%d9%8a%d9%82%d8%a7%d8%aa-restful-apis","status":"publish","type":"post","link":"https:\/\/cciedump.spoto.net\/arabicblog\/blog\/%d9%83%d9%8a%d9%81%d9%8a%d8%a9-%d8%af%d9%85%d8%ac-angular-4-%d9%85%d8%b9-%d9%88%d8%a7%d8%ac%d9%87%d8%a7%d8%aa-%d8%a8%d8%b1%d9%85%d8%ac%d8%a9-%d8%aa%d8%b7%d8%a8%d9%8a%d9%82%d8%a7%d8%aa-restful-apis\/","title":{"rendered":"\u0643\u064a\u0641\u064a\u0629 \u062f\u0645\u062c Angular 4 \u0645\u0639 \u0648\u0627\u062c\u0647\u0627\u062a \u0628\u0631\u0645\u062c\u0629 \u062a\u0637\u0628\u064a\u0642\u0627\u062a RESTful APIs \u062f\u0644\u064a\u0644 \u0639\u0645\u0644\u064a"},"content":{"rendered":"<p>\u064a\u0639\u062f \u062f\u0645\u062c Angular 4 \u0645\u0639 \u0648\u0627\u062c\u0647\u0627\u062a \u0628\u0631\u0645\u062c\u0629 \u0627\u0644\u062a\u0637\u0628\u064a\u0642\u0627\u062a RESTful APIs \u0623\u0645\u0631\u064b\u0627 \u062d\u064a\u0648\u064a\u064b\u0627 \u0644\u0645\u0637\u0648\u0631\u064a \u062a\u0637\u0628\u064a\u0642\u0627\u062a \u0627\u0644\u0648\u064a\u0628 \u0627\u0644\u062d\u062f\u064a\u062b\u0629. \u062a\u0633\u0645\u062d \u0648\u0627\u062c\u0647\u0627\u062a \u0628\u0631\u0645\u062c\u0629 \u062a\u0637\u0628\u064a\u0642\u0627\u062a RESTful \u0628\u0627\u0644\u062a\u0641\u0627\u0639\u0644 \u0645\u0639 \u0627\u0644\u0623\u0646\u0638\u0645\u0629 \u0627\u0644\u062e\u0644\u0641\u064a\u0629. \u0641\u0647\u064a \u062a\u062a\u064a\u062d \u062a\u0628\u0627\u062f\u0644 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0648\u0639\u0645\u0644\u064a\u0627\u062a CRUD (\u0625\u0646\u0634\u0627\u0621 \u0648\u0642\u0631\u0627\u0621\u0629 \u0648\u062a\u062d\u062f\u064a\u062b \u0648\u062d\u0630\u0641). \u064a\u0628\u0633\u0651\u0637 Angular 4\u060c \u0645\u0639 \u0648\u062d\u062f\u0629 HttpClientModule \u0627\u0644\u0645\u062f\u0645\u062c\u0629 \u0641\u064a\u0647\u060c \u0647\u0630\u0627 \u0627\u0644\u062a\u0643\u0627\u0645\u0644. \u0641\u064a \u0647\u0630\u0627 \u0627\u0644\u062f\u0644\u064a\u0644\u060c \u0633\u0646\u0633\u062a\u0643\u0634\u0641 \u0641\u064a \u0647\u0630\u0627 \u0627\u0644\u062f\u0644\u064a\u0644 \u0643\u064a\u0641\u064a\u0629 \u0631\u0628\u0637 \u062a\u0637\u0628\u064a\u0642 Angular 4 \u0628\u0648\u0627\u062c\u0647\u0629 \u0628\u0631\u0645\u062c\u0629 \u062a\u0637\u0628\u064a\u0642\u0627\u062a RESTful\u060c \u062e\u0637\u0648\u0629 \u0628\u062e\u0637\u0648\u0629.<br \/>\n\u0645\u0627 \u0633\u062a\u062a\u0639\u0644\u0645\u0647 \u0641\u064a \u0647\u0630\u0627 \u0627\u0644\u062f\u0644\u064a\u0644<br \/>\n1. \u0625\u0639\u062f\u0627\u062f \u0645\u0634\u0631\u0648\u0639 Angular 4.<br \/>\n2. \u062a\u062b\u0628\u064a\u062a \u0627\u0644\u062a\u0628\u0639\u064a\u0627\u062a \u0627\u0644\u0645\u0637\u0644\u0648\u0628\u0629.<br \/>\n3. \u062a\u0643\u0648\u064a\u0646 HttpClientModule.<br \/>\n4. \u0625\u0646\u0634\u0627\u0621 \u0637\u0644\u0628\u0627\u062a GET \u0648 POST \u0648 POST \u0648 PUT \u0648 DELETE.<br \/>\n5. \u0645\u0639\u0627\u0644\u062c\u0629 \u0627\u0644\u0623\u062e\u0637\u0627\u0621 \u0648\u062a\u062d\u0633\u064a\u0646 \u062a\u062c\u0631\u0628\u0629 \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645.<br \/>\n\u0627\u0644\u0645\u062a\u0637\u0644\u0628\u0627\u062a \u0627\u0644\u0623\u0633\u0627\u0633\u064a\u0629 \u0641\u0647\u0645 \u0623\u0633\u0627\u0633\u064a \u0644 Angular 4.   \u062a\u062b\u0628\u064a\u062a Node.js \u0648 npm.   \u0648\u0627\u062c\u0647\u0629 \u0628\u0631\u0645\u062c\u0629 \u062a\u0637\u0628\u064a\u0642\u0627\u062a RESTful \u0644\u0644\u062a\u0641\u0627\u0639\u0644 \u0645\u0639\u0647\u0627 (\u0639\u0644\u0649 \u0633\u0628\u064a\u0644 \u0627\u0644\u0645\u062b\u0627\u0644\u060c JSONPlaceholder \u0623\u0648 \u0627\u0644\u0648\u0627\u062c\u0647\u0629 \u0627\u0644\u062e\u0644\u0641\u064a\u0629 \u0627\u0644\u062e\u0627\u0635\u0629 \u0628\u0643).<br \/>\n\u0627\u0644\u062e\u0637\u0648\u0629 1: \u0625\u0639\u062f\u0627\u062f \u0645\u0634\u0631\u0648\u0639 Angular 4 \u0627\u0644\u062e\u0627\u0635 \u0628\u0643<br \/>\n\u0644\u0644\u0628\u062f\u0621\u060c \u0642\u0645 \u0628\u0625\u0646\u0634\u0627\u0621 \u0645\u0634\u0631\u0648\u0639 Angular 4 \u062c\u062f\u064a\u062f \u0623\u0648 \u0627\u0633\u062a\u062e\u062f\u0645 \u0645\u0634\u0631\u0648\u0639\u064b\u0627 \u0645\u0648\u062c\u0648\u062f\u064b\u0627. \u0627\u0633\u062a\u062e\u062f\u0645 CLI Angular \u0644\u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 \u0648\u062e\u062f\u0645\u062a\u0647.<br \/>\n&#8221;&#8217;\u0628\u0627\u0634<br \/>\nng \u062c\u062f\u064a\u062f angular-rest-API<br \/>\ncd angular-rest-api<br \/>\n\u062e\u062f\u0645\u0629 ng<br \/>\n&#8220;`<br \/>\n\u064a\u062c\u0628 \u0623\u0646 \u064a\u0639\u0645\u0644 \u062a\u0637\u0628\u064a\u0642\u0643 \u0627\u0644\u0622\u0646 \u0639\u0644\u0649<br \/>\n\u0627\u0644\u062e\u0637\u0648\u0629 2: \u062a\u062b\u0628\u064a\u062a \u0627\u0644\u062a\u0628\u0639\u064a\u0627\u062a \u0627\u0644\u0645\u0637\u0644\u0648\u0628\u0629<br \/>\n\u064a\u0623\u062a\u064a Angular 4 \u0645\u0639 HttpClientModule \u0643\u062c\u0632\u0621 \u0645\u0646 \u0648\u062d\u062f\u0627\u062a\u0647 \u0627\u0644\u0623\u0633\u0627\u0633\u064a\u0629. \u062a\u0623\u0643\u062f \u0645\u0646 \u062a\u0648\u0641\u0631\u0647\u0627 \u0641\u064a \u0645\u0634\u0631\u0648\u0639\u0643.<br \/>\n&#8221;&#8221;bash<br \/>\nnpm install @angular\/common@4 &#8211; \u062d\u0641\u0638<br \/>\nnpm \u062a\u062b\u0628\u064a\u062a npm @angular\/http@4 &#8211; \u062d\u0641\u0638<br \/>\n&#8220;`<br \/>\n\u0627\u0644\u062e\u0637\u0648\u0629 3: \u0627\u0633\u062a\u064a\u0631\u0627\u062f \u0648\u062d\u062f\u0629 HttpClientModule \u0648\u062a\u0643\u0648\u064a\u0646\u0647\u0627<br \/>\n\u0641\u064a Angular 4\u060c \u0627\u0633\u062a\u0648\u0631\u062f HttpClientModule \u0641\u064a \u0627\u0644\u0648\u062d\u062f\u0629 \u0627\u0644\u0646\u0645\u0637\u064a\u0629 \u0627\u0644\u062c\u0630\u0631\u064a\u0629 \u0644\u062a\u0637\u0628\u064a\u0642\u0643. \u0647\u0630\u0627 \u064a\u062a\u064a\u062d \u0648\u0638\u0627\u0626\u0641 HTTP.<br \/>\n\u0627\u0641\u062a\u062d &#8216;src\/app\/app.module.ts&#8217; \u0648\u0623\u0636\u0641 \u0645\u0627 \u064a\u0644\u064a:<br \/>\n&#8221;&#8221;\u060c &#8221;&#8217;\u0646\u0648\u0639 \u0627\u0644\u0646\u0635<br \/>\n\u0627\u0633\u062a\u064a\u0631\u0627\u062f { BrowserModule } \u0645\u0646 &#8216;@angular\/platform-browser&#8217;;<br \/>\n\u0627\u0633\u062a\u064a\u0631\u0627\u062f { NgModule } \u0645\u0646 &#8216;@angular\/core&#8217;;<br \/>\n\u0627\u0633\u062a\u064a\u0631\u0627\u062f { HttpClientModule } \u0645\u0646 &#8216;@angular\/common\/http&#8217;;<br \/>\n\u0627\u0633\u062a\u064a\u0631\u0627\u062f { AppComponent } \u0645\u0646 &#8220;.\/app.component&#8221;;<br \/>\n@NgModule({<br \/>\n\u0627\u0644\u0625\u0639\u0644\u0627\u0646\u0627\u062a: [AppComponent],<br \/>\n\u0627\u0644\u0648\u0627\u0631\u062f\u0627\u062a: [<br \/>\nBrowserModule,<br \/>\nHttpClientModule \/\/ \u0627\u0633\u062a\u064a\u0631\u0627\u062f HttpClientModule \u0647\u0646\u0627<br \/>\n],<br \/>\n\u0627\u0644\u0645\u0632\u0648\u062f\u064a\u0646: [],<br \/>\n\u0627\u0644\u062a\u0645\u0647\u064a\u062f: [\u0645\u0643\u0648\u0646 \u0627\u0644\u062a\u0637\u0628\u064a\u0642]<br \/>\n})<br \/>\n\u062a\u0635\u062f\u064a\u0631 \u0641\u0626\u0629 AppModule { }<br \/>\n&#8220;`<br \/>\n\u0627\u0644\u062e\u0637\u0648\u0629 4: \u0625\u0646\u0634\u0627\u0621 \u062e\u062f\u0645\u0629 \u0644\u062a\u0641\u0627\u0639\u0644 API<br \/>\n\u062a\u062a\u064a\u062d \u0644\u0643 \u0627\u0644\u062e\u062f\u0645\u0627\u062a \u0627\u0644\u0632\u0627\u0648\u064a\u0651\u0629 \u0627\u0644\u062a\u0641\u0627\u0641 \u0645\u0646\u0637\u0642 HTTP. \u064a\u0645\u0643\u0646\u0643 \u0625\u0639\u0627\u062f\u0629 \u0627\u0633\u062a\u062e\u062f\u0627\u0645\u0647\u0627 \u0641\u064a \u0627\u0644\u0645\u0643\u0648\u0646\u0627\u062a.<br \/>\n\u0623\u0646\u0634\u0626 \u062e\u062f\u0645\u0629 \u062c\u062f\u064a\u062f\u0629:<br \/>\n&#8221;&#8221;\u0628\u0627\u0634<br \/>\n\u0625\u0646\u0634\u0627\u0621 \u062e\u062f\u0645\u0629 ng \u0625\u0646\u0634\u0627\u0621 \u062e\u062f\u0645\u0629 api<br \/>\n&#8220;`<br \/>\n\u0641\u064a &#8216;src\/app\/API.service.ts&#8217;\u060c \u0642\u0645 \u0628\u062a\u0646\u0641\u064a\u0630 \u0645\u0627 \u064a\u0644\u064a:<br \/>\n&#8221;&#8221;&#8217;\u0646\u0635\u0651 \u0646\u0648\u0639\u064a<br \/>\n\u0627\u0633\u062a\u064a\u0631\u0627\u062f { Injectable } \u0645\u0646 &#8216;@angular\/core&#8217;;<br \/>\n\u0627\u0633\u062a\u064a\u0631\u0627\u062f { HttpClient } \u0645\u0646 &#8216;@angular\/common\/http&#8217;;<br \/>\n\u0627\u0633\u062a\u064a\u0631\u0627\u062f { \u0642\u0627\u0628\u0644 \u0644\u0644\u0645\u0644\u0627\u062d\u0638\u0629 } \u0645\u0646 &#8216;rxjs&#8217;;<br \/>\n@Injectable({<br \/>\n\u0645\u0632\u0648\u062f \u0641\u064a: &#8216;\u062c\u0630\u0631&#8217;<br \/>\n})<br \/>\n\u062a\u0635\u062f\u064a\u0631 \u0641\u0626\u0629 ApiService {<br \/>\n\u0645\u064f\u0646\u0634\u0626 (http \u062e\u0627\u0635: HttpClient) {} {}<br \/>\n\/\/ \u0637\u0644\u0628 GET<br \/>\ngetPosts(): \u0642\u0627\u0628\u0644 \u0644\u0644\u0645\u0644\u0627\u062d\u0638\u0629 {<br \/>\n\u0625\u0631\u062c\u0627\u0639 this.http.get(this.apiUrl);<br \/>\n}<br \/>\n\/\/ \u0637\u0644\u0628 POST<br \/>\n\u0625\u0646\u0634\u0627\u0621 \u0628\u0631\u064a\u062f(\u0628\u064a\u0627\u0646\u0627\u062a: \u0623\u064a): \u0642\u0627\u0628\u0644 \u0644\u0644\u0645\u0644\u0627\u062d\u0638\u0629 {<br \/>\n\u0625\u0631\u062c\u0627\u0639 (this.apiUrl, data);<br \/>\n}<br \/>\n\/\/ \u0637\u0644\u0628 PUT<br \/>\n\u062a\u062d\u062f\u064a\u062bPost(\u0627\u0644\u0645\u0639\u0631\u0641: \u0631\u0642\u0645\u060c \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a: \u0623\u064a): \u0642\u0627\u0628\u0644 \u0644\u0644\u0645\u0644\u0627\u062d\u0638\u0629 {<br \/>\n\u0625\u0631\u062c\u0627\u0639 \u0647\u0630\u0627 http.http.put(`${this.apiUrl}\/${id}}\u060c \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a);<br \/>\n}<br \/>\n\/\/ \u0637\u0644\u0628 \u0627\u0644\u062d\u0630\u0641<br \/>\n\u062d\u0630\u0641 \u0627\u0644\u0645\u0646\u0634\u0648\u0631(\u0627\u0644\u0645\u0639\u0631\u0641: \u0631\u0642\u0645): \u0642\u0627\u0628\u0644 \u0644\u0644\u0645\u0644\u0627\u062d\u0638\u0629 {<br \/>\n\u0625\u0631\u062c\u0627\u0639 this.http.http.delete(`${this.apiUrl}\/${id}});<br \/>\n}<br \/>\n}<br \/>\n&#8220;`<br \/>\n\u0627\u0644\u062e\u0637\u0648\u0629 5: \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0627\u0644\u062e\u062f\u0645\u0629 \u0641\u064a \u0645\u0643\u0648\u0651\u0646 \u0645\u0627<br \/>\n\u0644\u0644\u062a\u0648\u0636\u064a\u062d\u060c \u0633\u0646\u0633\u062a\u062e\u062f\u0645 \u0627\u0644\u062e\u062f\u0645\u0629 \u0641\u064a \u0627\u0644\u0645\u0643\u0648\u0646 \u0627\u0644\u062c\u0630\u0631. \u0627\u0641\u062a\u062d &#8220;src\/app\/app.component.ts&#8221; \u0648\u0639\u062f\u0651\u0644 \u0639\u0644\u0649 \u0627\u0644\u0646\u062d\u0648 \u0627\u0644\u062a\u0627\u0644\u064a:<br \/>\n&#8221;&#8221;&#8217;\u0646\u0635\u0651 \u0646\u0648\u0639\u064a<br \/>\n\u0627\u0633\u062a\u064a\u0631\u0627\u062f { \u0645\u0643\u0648\u0646\u060c OnInit } \u0645\u0646 &#8216;@angular\/core&#8217;;<br \/>\n\u0627\u0633\u062a\u064a\u0631\u0627\u062f { ApiService } \u0645\u0646 &#8216;.\/api.service&#8217;;<br \/>\n@\u0645\u0643\u0648\u0651\u0646({<br \/>\n\u0627\u0644\u0645\u062d\u062f\u062f: &#8216;\u062c\u0630\u0631 \u0627\u0644\u062a\u0637\u0628\u064a\u0642&#8217;,<br \/>\n\u0642\u0627\u0644\u0628: &#8216;<br \/>\n\u0627\u0644\u0632\u0627\u0648\u064a 4 \u0648\u0648\u0627\u062c\u0647\u0629 \u0628\u0631\u0645\u062c\u0629 \u062a\u0637\u0628\u064a\u0642\u0627\u062a RESTful<br \/>\n\u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0627\u0644\u0645\u0634\u0627\u0631\u0643\u0627\u062a<br \/>\n{{{ post.title }}}<br \/>\n`<br \/>\n})<br \/>\n\u062a\u0635\u062f\u064a\u0631 \u0635\u0646\u0641 AppComponent \u064a\u0646\u0641\u0630 OnInit {<br \/>\n\u0627\u0644\u0645\u0634\u0627\u0631\u0643\u0627\u062a: \u0623\u064a [] = [];<br \/>\n\u0645\u064f\u0646\u0634\u0626(\u062e\u0627\u0635 apiService: ApiService) {} {}<br \/>\nngOnInInit() {<br \/>\n\u0647\u0630\u0627.fetchPosts();<br \/>\n}<br \/>\nfetchPosts() { {<br \/>\n\u0647\u0630\u0627.apiService.getPosts().subscription(<br \/>\n(\u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a) => { {<br \/>\n\u0647\u0630\u0647 \u0627\u0644\u0645\u0634\u0627\u0631\u0643\u0627\u062a = \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a;<br \/>\n},<br \/>\n(\u062e\u0637\u0623) => {<br \/>\nconsole.error(&#8216;\u062e\u0637\u0623 \u0641\u064a \u062c\u0644\u0628 \u0627\u0644\u0645\u0634\u0627\u0631\u0643\u0627\u062a&#8217;\u060c \u062e\u0637\u0623);<br \/>\n}<br \/>\n);<br \/>\n}<br \/>\n}<br \/>\n&#8220;`<br \/>\n\u0627\u0644\u062e\u0637\u0648\u0629 6: \u0627\u0644\u062a\u0639\u0627\u0645\u0644 \u0645\u0639 \u0623\u062e\u0637\u0627\u0621 HTTP<br \/>\n\u0645\u0639\u0627\u0644\u062c\u0629 \u0627\u0644\u0623\u062e\u0637\u0627\u0621 \u0623\u0645\u0631 \u0628\u0627\u0644\u063a \u0627\u0644\u0623\u0647\u0645\u064a\u0629 \u0644\u062a\u062c\u0631\u0628\u0629 \u0645\u0633\u062a\u062e\u062f\u0645 \u062c\u064a\u062f\u0629. \u064a\u0648\u0641\u0631 HttpClient \u0627\u0644\u062e\u0627\u0635 \u0628 Angular&#8217;s HttpClient \u0645\u0634\u063a\u0644\u0627\u062a \u0645\u062b\u0644 catchError \u0644\u0625\u062f\u0627\u0631\u0629 \u0627\u0644\u0623\u062e\u0637\u0627\u0621.<br \/>\n\u0639\u062f\u0651\u0644 \u0623\u0633\u0627\u0644\u064a\u0628 \u062e\u062f\u0645\u062a\u0643 \u0644\u0644\u062a\u0639\u0627\u0645\u0644 \u0645\u0639 \u0627\u0644\u0623\u062e\u0637\u0627\u0621:<br \/>\n&#8216;-&#8216; &#8216;\u0646\u0635 \u0645\u0643\u062a\u0648\u0628<br \/>\n\u0627\u0633\u062a\u0648\u0631\u062f { catchError } \u0645\u0646 &#8216;rxjs\/\u0627\u0644\u0645\u0634\u063a\u0644\u064a\u0646&#8217;;<br \/>\n\u0627\u0633\u062a\u064a\u0631\u0627\u062f { throwError } \u0645\u0646 &#8216;rxjs&#8217;;<br \/>\ngetPosts(): \u0642\u0627\u0628\u0644 \u0644\u0644\u0645\u0644\u0627\u062d\u0638\u0629 {<br \/>\n\u0625\u0631\u062c\u0627\u0639 this.http.get(this.apiUrl).pipe(<br \/>\ncatchError(\u0647\u0630\u0627.handleError)<br \/>\n);<br \/>\n}<br \/>\n\u062e\u0627\u0635 \u0627\u0644\u062a\u0639\u0627\u0645\u0644 \u0645\u0639 \u0627\u0644\u062e\u0637\u0623(\u062e\u0637\u0623: \u0623\u064a) { {<br \/>\nconsole.error(&#8216;\u062d\u062f\u062b \u062e\u0637\u0623:&#8217;\u060c \u062e\u0637\u0623);<br \/>\n\u0625\u0631\u062c\u0627\u0639 throwError(&#8216;\u062d\u062f\u062b \u062e\u0637\u0623 \u0645\u0627\u061b \u064a\u0631\u062c\u0649 \u0627\u0644\u0645\u062d\u0627\u0648\u0644\u0629 \u0645\u0631\u0629 \u0623\u062e\u0631\u0649 \u0644\u0627\u062d\u0642\u064b\u0627&#8217;);<br \/>\n}<br \/>\n&#8220;`<br \/>\n\u0627\u0644\u062e\u0637\u0648\u0629 7: \u0627\u062e\u062a\u0628\u0627\u0631 \u0639\u0645\u0644\u064a\u0627\u062a CRUD<br \/>\n\u0627\u0633\u062a\u062e\u062f\u0645 \u0627\u0644\u0623\u0632\u0631\u0627\u0631 \u0641\u064a \u0642\u0627\u0644\u0628 \u0627\u0644\u0645\u0643\u0648\u0646 \u0627\u0644\u062e\u0627\u0635 \u0628\u0643 \u0644\u062a\u0634\u063a\u064a\u0644 \u0639\u0645\u0644\u064a\u0627\u062a \u0648\u0627\u062c\u0647\u0629 \u0628\u0631\u0645\u062c\u0629 \u0627\u0644\u062a\u0637\u0628\u064a\u0642\u0627\u062a \u0627\u0644\u0645\u062e\u062a\u0644\u0641\u0629. \u0639\u0644\u0649 \u0633\u0628\u064a\u0644 \u0627\u0644\u0645\u062b\u0627\u0644:<br \/>\n&#8221;&#8221;html<br \/>\n\u0625\u0646\u0634\u0627\u0621 \u0645\u0634\u0627\u0631\u0643\u0629<br \/>\n\u062a\u062d\u062f\u064a\u062b \u0645\u0634\u0627\u0631\u0643\u0629<br \/>\n\u062d\u0630\u0641 \u0645\u0634\u0627\u0631\u0643\u0629<br \/>\n&#8220;`<br \/>\n\u0648\u062a\u0646\u0641\u064a\u0630 \u0647\u0630\u0647 \u0627\u0644\u0637\u0631\u0642 \u0641\u064a \u0627\u0644\u0645\u0643\u0648\u0646:<br \/>\n&#8221;&#8221;\u0646\u0635\u064a\u0629<br \/>\n\u0625\u0646\u0634\u0627\u0621 \u0645\u0646\u0634\u0648\u0631 \u062c\u062f\u064a\u062f() {<br \/>\nconst newPost = { \u0627\u0644\u0639\u0646\u0648\u0627\u0646: &#8216;\u0645\u0646\u0634\u0648\u0631 \u062c\u062f\u064a\u062f&#8217;\u060c \u0627\u0644\u0646\u0635 \u0627\u0644\u0623\u0633\u0627\u0633\u064a: &#8216;\u0647\u0630\u0627 \u0645\u0646\u0634\u0648\u0631 \u062c\u062f\u064a\u062f&#8217;. };<br \/>\n\u0647\u0630\u0627.apiService.createPost(newPost).subscribe(<br \/>\n(\u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a) => console.log(&#8216;post created:&#8217;,&#8217;, data),<br \/>\n(\u062e\u0637\u0623) => (\u062e\u0637\u0623) => console.error(&#8216;\u062e\u0637\u0623 \u0641\u064a \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0645\u0646\u0634\u0648\u0631:&#8217;\u060c \u062e\u0637\u0623)<br \/>\n);<br \/>\n}<br \/>\n\u062a\u062d\u062f\u064a\u062b \u0627\u0644\u0645\u0646\u0634\u0648\u0631(\u0627\u0644\u0645\u0639\u0631\u0641: \u0631\u0642\u0645) {<br \/>\nconst updatedPost = { \u0627\u0644\u0639\u0646\u0648\u0627\u0646: &#8216;\u0645\u0646\u0634\u0648\u0631 \u0645\u062d\u062f\u0651\u062b&#8217;\u060c \u0627\u0644\u0646\u0635 \u0627\u0644\u0623\u0633\u0627\u0633\u064a: &#8216;\u0645\u062d\u062a\u0648\u0649 \u0645\u062d\u062f\u0651\u062b&#8217;. };<br \/>\n\u0647\u0630\u0627.apiService.updatePost(id, updatedPost).subscribe(<br \/>\n(\u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a) => console.log(&#8216;\u062a\u0645 \u062a\u062d\u062f\u064a\u062b \u0627\u0644\u0645\u0646\u0634\u0648\u0631:&#8217;\u060c \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a),<br \/>\n(\u062e\u0637\u0623) => (\u062e\u0637\u0623) => console.error(&#8216;\u062e\u0637\u0623 \u0641\u064a \u062a\u062d\u062f\u064a\u062b \u0627\u0644\u0645\u0646\u0634\u0648\u0631:&#8217;\u060c \u062e\u0637\u0623)<br \/>\n);<br \/>\n}<br \/>\n\u062d\u0630\u0641 \u0645\u0646\u0634\u0648\u0631(\u0627\u0644\u0645\u0639\u0631\u0641: \u0631\u0642\u0645) {<br \/>\n\u0647\u0630\u0627.apiService.deletePost(id).subscription(<br \/>\n(\u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a) => console.log(&#8216;\u062a\u0645 \u062d\u0630\u0641 \u0627\u0644\u0645\u0646\u0634\u0648\u0631:&#8217;\u060c \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a),<br \/>\n(\u062e\u0637\u0623) => (\u062e\u0637\u0623) => console.error(&#8216;\u062e\u0637\u0623 \u0641\u064a \u062d\u0630\u0641 \u0627\u0644\u0645\u0646\u0634\u0648\u0631:&#8217;,&#8217;, \u062e\u0637\u0623)<br \/>\n);<br \/>\n}<br \/>\n\u0627\u0644\u062e\u0637\u0648\u0629 8: \u062a\u062d\u0633\u064a\u0646 \u062a\u062c\u0631\u0628\u0629 \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645<br \/>\n\u0644\u062a\u062d\u0633\u064a\u0646 \u062a\u062c\u0631\u0628\u0629 \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645: \u0627\u0639\u0631\u0636 \u0645\u0624\u0634\u0631\u0627\u062a \u0627\u0644\u062a\u062d\u0645\u064a\u0644 \u0623\u062b\u0646\u0627\u0621 \u0627\u0646\u062a\u0638\u0627\u0631 \u0627\u0633\u062a\u062c\u0627\u0628\u0627\u062a \u0648\u0627\u062c\u0647\u0629 \u0628\u0631\u0645\u062c\u0629 \u0627\u0644\u062a\u0637\u0628\u064a\u0642\u0627\u062a.   \u0639\u0631\u0636 \u0631\u0633\u0627\u0626\u0644 \u062e\u0637\u0623 \u0633\u0647\u0644\u0629 \u0627\u0644\u0627\u0633\u062a\u062e\u062f\u0627\u0645.   \u062a\u062e\u0632\u064a\u0646 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0645\u0624\u0642\u062a\u064b\u0627 \u0644\u062a\u062d\u0633\u064a\u0646 \u0627\u0644\u0623\u062f\u0627\u0621.<br \/>\n\u0643\u064a\u0641 \u062a\u062d\u0635\u0644 \u0639\u0644\u0649 \u0634\u0647\u0627\u062f\u0629 Angular JS 4\u061f<br \/>\n\u0646\u062d\u0646 \u0634\u0631\u0643\u0629 \u062a\u0643\u0646\u0648\u0644\u0648\u062c\u064a\u0627 \u062a\u0639\u0644\u064a\u0645\u064a\u0629 \u062a\u0642\u062f\u0645 \u062f\u0648\u0631\u0627\u062a \u062a\u062f\u0631\u064a\u0628\u064a\u0629 \u0644\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0627\u0644\u0634\u0647\u0627\u062f\u0627\u062a \u0644\u062a\u0633\u0631\u064a\u0639 \u0627\u0644\u062d\u064a\u0627\u0629 \u0627\u0644\u0645\u0647\u0646\u064a\u0629 \u0644\u0644\u0645\u0647\u0646\u064a\u064a\u0646 \u0627\u0644\u0639\u0627\u0645\u0644\u064a\u0646 \u0641\u064a \u062c\u0645\u064a\u0639 \u0623\u0646\u062d\u0627\u0621 \u0627\u0644\u0639\u0627\u0644\u0645. \u0646\u062d\u0646 \u0646\u0642\u062f\u0645 \u0627\u0644\u062a\u062f\u0631\u064a\u0628 \u0645\u0646 \u062e\u0644\u0627\u0644 \u0648\u0631\u0634 \u0639\u0645\u0644 \u0641\u064a \u0627\u0644\u0641\u0635\u0648\u0644 \u0627\u0644\u062f\u0631\u0627\u0633\u064a\u0629 \u0628\u0642\u064a\u0627\u062f\u0629 \u0645\u062f\u0631\u0628\u060c \u0648\u062f\u0648\u0631\u0627\u062a \u062a\u062f\u0631\u064a\u0628\u064a\u0629 \u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0645\u0628\u0627\u0634\u0631\u0629 \u0628\u0642\u064a\u0627\u062f\u0629 \u0645\u062f\u0631\u0628\u060c \u0648\u062f\u0648\u0631\u0627\u062a \u0627\u0644\u062a\u0639\u0644\u0645 \u0627\u0644\u0625\u0644\u0643\u062a\u0631\u0648\u0646\u064a \u0630\u0627\u062a\u064a\u0629 \u0627\u0644\u062a\u0639\u0644\u0645.<br \/>\n\u0644\u0642\u062f \u0623\u062c\u0631\u064a\u0646\u0627 \u0628\u0646\u062c\u0627\u062d \u062f\u0648\u0631\u0627\u062a \u062a\u062f\u0631\u064a\u0628\u064a\u0629 \u0641\u064a 108 \u062f\u0648\u0644 \u0641\u064a \u062c\u0645\u064a\u0639 \u0623\u0646\u062d\u0627\u0621 \u0627\u0644\u0639\u0627\u0644\u0645 \u0648\u0645\u0643\u0651\u0646\u0627 \u0627\u0644\u0622\u0644\u0627\u0641 \u0645\u0646 \u0627\u0644\u0645\u0647\u0646\u064a\u064a\u0646 \u0627\u0644\u0639\u0627\u0645\u0644\u064a\u0646 \u0645\u0646 \u062a\u0639\u0632\u064a\u0632 \u0646\u0637\u0627\u0642 \u062d\u064a\u0627\u062a\u0647\u0645 \u0627\u0644\u0645\u0647\u0646\u064a\u0629.<br \/>\n\u062a\u0634\u0645\u0644 \u0645\u062d\u0641\u0638\u062a\u0646\u0627 \u0627\u0644\u062a\u062f\u0631\u064a\u0628\u064a\u0629 \u0644\u0644\u0645\u0624\u0633\u0633\u0627\u062a \u062f\u0648\u0631\u0627\u062a \u062a\u062f\u0631\u064a\u0628\u064a\u0629 \u0645\u0639\u062a\u0645\u062f\u0629 \u0648\u0645\u0639\u062a\u0631\u0641 \u0628\u0647\u0627 \u0639\u0627\u0644\u0645\u064a\u0627\u064b \u0648\u0645\u0637\u0644\u0648\u0628\u0629 \u0641\u064a \u0625\u062f\u0627\u0631\u0629 \u0627\u0644\u0645\u0634\u0627\u0631\u064a\u0639\u060c \u0648\u0625\u062f\u0627\u0631\u0629 \u0627\u0644\u062c\u0648\u062f\u0629\u060c \u0648\u062a\u062d\u0644\u064a\u0644 \u0627\u0644\u0623\u0639\u0645\u0627\u0644\u060c \u0648\u0625\u062f\u0627\u0631\u0629 \u062e\u062f\u0645\u0627\u062a \u062a\u0643\u0646\u0648\u0644\u0648\u062c\u064a\u0627 \u0627\u0644\u0645\u0639\u0644\u0648\u0645\u0627\u062a\u060c \u0648&#8221;\u0623\u062c\u0627\u064a\u0644&#8221; \u0648&#8221;\u0633\u0643\u0631\u0648\u0645&#8221;\u060c \u0648\u0627\u0644\u0623\u0645\u0646 \u0627\u0644\u0633\u064a\u0628\u0631\u0627\u0646\u064a\u060c \u0648\u0639\u0644\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a\u060c \u0648\u0627\u0644\u062a\u0642\u0646\u064a\u0627\u062a \u0627\u0644\u0646\u0627\u0634\u0626\u0629. \u0642\u0645 \u0628\u062a\u0646\u0632\u064a\u0644 \u0643\u062a\u0627\u0644\u0648\u062c \u062a\u062f\u0631\u064a\u0628 \u0627\u0644\u0645\u0624\u0633\u0633\u0627\u062a \u0645\u0646 https:\/\/cciedump.spoto.net\/ar\/<br \/>\n\u062a\u0634\u0645\u0644 \u0627\u0644\u062f\u0648\u0631\u0627\u062a \u0627\u0644\u0634\u0627\u0626\u0639\u0629 \u0645\u0627 \u064a\u0644\u064a:<br \/>\n\u0625\u062f\u0627\u0631\u0629 \u0627\u0644\u0645\u0634\u0627\u0631\u064a\u0639: PMP \u0648APP \u0648CAPM \u0648PMI RMP<br \/>\n\u0625\u062f\u0627\u0631\u0629 \u0627\u0644\u062c\u0648\u062f\u0629: \u0627\u0644\u062d\u0632\u0627\u0645 \u0627\u0644\u0623\u0633\u0648\u062f \u0644\u0633\u062a\u0629 \u0633\u064a\u062c\u0645\u0627\u060c \u0627\u0644\u062d\u0632\u0627\u0645 \u0627\u0644\u0623\u062e\u0636\u0631 \u0644\u0633\u062a\u0629 \u0633\u064a\u062c\u0645\u0627\u060c \u0625\u062f\u0627\u0631\u0629 \u0627\u0644\u0644\u064a\u0646\u060c \u0625\u062f\u0627\u0631\u0629 \u0627\u0644\u0644\u064a\u0646\u060c Minitab\u060c CMMI<br \/>\n\u062a\u062d\u0644\u064a\u0644 \u0627\u0644\u0623\u0639\u0645\u0627\u0644: CBCAP\u060c CCCBA\u060c ECBA<br \/>\n\u0627\u0644\u062a\u062f\u0631\u064a\u0628 \u0627\u0644\u0631\u0634\u064a\u0642: PMI ACP\u060c CMS\u060c CSPO\u060c CSPO<br \/>\n\u062a\u062f\u0631\u064a\u0628 \u0633\u0643\u0631\u0648\u0645: CSM<br \/>\n\u062f\u064a\u0641 \u0623\u0648\u0628\u0633<br \/>\n\u0625\u062f\u0627\u0631\u0629 \u0627\u0644\u0628\u0631\u0627\u0645\u062c: PgMP<br \/>\n\u062a\u0643\u0646\u0648\u0644\u0648\u062c\u064a\u0627 \u0627\u0644\u062d\u0648\u0633\u0628\u0629 \u0627\u0644\u0633\u062d\u0627\u0628\u064a\u0629: \u0627\u0644\u062d\u0648\u0633\u0628\u0629 \u0627\u0644\u0633\u062d\u0627\u0628\u064a\u0629: Exin \u0627\u0644\u062d\u0648\u0633\u0628\u0629 \u0627\u0644\u0633\u062d\u0627\u0628\u064a\u0629<br \/>\n\u0625\u062f\u0627\u0631\u0629 \u0639\u0645\u064a\u0644 \u0633\u064a\u062a\u0631\u064a\u0643\u0633: \u0625\u062f\u0627\u0631\u0629 \u0639\u0645\u064a\u0644 \u0633\u064a\u062a\u0631\u064a\u0643\u0633 \u0625\u062f\u0627\u0631\u0629 \u0633\u062d\u0627\u0628\u0629 \u0633\u064a\u062a\u0631\u064a\u0643\u0633: \u0625\u062f\u0627\u0631\u0629 \u0627\u0644\u0633\u062d\u0627\u0628\u0629<br \/>\n\u0627\u0644\u0634\u0647\u0627\u062f\u0627\u062a \u0627\u0644\u0640 10 \u0627\u0644\u0623\u0639\u0644\u0649 \u0623\u062c\u0631\u0627\u064b \u0627\u0644\u0645\u0633\u062a\u0647\u062f\u0641\u0629 \u0641\u064a 2024 \u0647\u064a<br \/>\n\u0645\u062d\u062a\u0631\u0641 \u0623\u0645\u0646 \u0646\u0638\u0645 \u0627\u0644\u0645\u0639\u0644\u0648\u0645\u0627\u062a \u0627\u0644\u0645\u0639\u062a\u0645\u062f (CISSP)<br \/>\n\u062e\u0627\u062a\u0645\u0629<br \/>\n\u0644\u062f\u0645\u062c Angular 4 \u0645\u0639 \u0648\u0627\u062c\u0647\u0627\u062a \u0628\u0631\u0645\u062c\u0629 \u062a\u0637\u0628\u064a\u0642\u0627\u062a RESTful\u060c \u0627\u0633\u062a\u062e\u062f\u0645 HttpClientModule \u0644\u0639\u0645\u0644\u064a\u0627\u062a CRUD \u0627\u0644\u0641\u0639\u0627\u0644\u0629.<br \/>\n\u064a\u0645\u0643\u0646\u0643 \u0625\u0646\u0634\u0627\u0621 \u062a\u0637\u0628\u064a\u0642\u0627\u062a \u0642\u0648\u064a\u0629 \u0645\u0646 \u062e\u0644\u0627\u0644:<br \/>\n\u062a\u063a\u0644\u064a\u0641 \u0645\u0643\u0627\u0644\u0645\u0627\u062a \u0648\u0627\u062c\u0647\u0629 \u0628\u0631\u0645\u062c\u0629 \u0627\u0644\u062a\u0637\u0628\u064a\u0642\u0627\u062a \u0641\u064a \u0627\u0644\u062e\u062f\u0645\u0627\u062a.<br \/>\n\u0645\u0639\u0627\u0644\u062c\u0629 \u0627\u0644\u0623\u062e\u0637\u0627\u0621 \u0628\u0623\u0645\u0627\u0646.<br \/>\n\u062a\u0635\u0645\u064a\u0645 \u0645\u0643\u0648\u0646\u0627\u062a \u0642\u0627\u0628\u0644\u0629 \u0644\u0625\u0639\u0627\u062f\u0629 \u0627\u0644\u0627\u0633\u062a\u062e\u062f\u0627\u0645.<br \/>\n\u0625\u062a\u0642\u0627\u0646 \u0647\u0630\u0627 \u0627\u0644\u062a\u0643\u0627\u0645\u0644 \u0633\u064a\u062c\u0639\u0644 \u062a\u0637\u0628\u064a\u0642\u0627\u062a Angular \u062f\u064a\u0646\u0627\u0645\u064a\u0643\u064a\u0629. \u0648\u0645\u0646 \u062b\u0645 \u0633\u062a\u062a\u0648\u0627\u0635\u0644 \u0645\u0639 \u0627\u0644\u0623\u0646\u0638\u0645\u0629 \u0627\u0644\u062e\u0644\u0641\u064a\u0629 \u0628\u0633\u0644\u0627\u0633\u0629.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0623\u062a\u0642\u0646 \u062a\u0643\u0627\u0645\u0644 Angular 4 \u0645\u0639 \u0648\u0627\u062c\u0647\u0627\u062a \u0628\u0631\u0645\u062c\u0629 \u062a\u0637\u0628\u064a\u0642\u0627\u062a RESTful! \u0627\u0641\u062a\u062d \u0627\u0644\u0625\u0631\u0634\u0627\u062f\u0627\u062a \u062e\u0637\u0648\u0629 \u0628\u062e\u0637\u0648\u0629 \u0641\u064a \u062f\u0644\u064a\u0644\u0646\u0627 \u0627\u0644\u0639\u0645\u0644\u064a \u0644\u062a\u0637\u0648\u064a\u0631 \u0627\u0644\u0648\u064a\u0628 \u0628\u0633\u0644\u0627\u0633\u0629 \u0648\u0643\u0641\u0627\u0621\u0629.<\/p>\n","protected":false},"author":1,"featured_media":4484,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[7],"tags":[],"_links":{"self":[{"href":"https:\/\/cciedump.spoto.net\/arabicblog\/wp-json\/wp\/v2\/posts\/7681"}],"collection":[{"href":"https:\/\/cciedump.spoto.net\/arabicblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cciedump.spoto.net\/arabicblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cciedump.spoto.net\/arabicblog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cciedump.spoto.net\/arabicblog\/wp-json\/wp\/v2\/comments?post=7681"}],"version-history":[{"count":0,"href":"https:\/\/cciedump.spoto.net\/arabicblog\/wp-json\/wp\/v2\/posts\/7681\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cciedump.spoto.net\/arabicblog\/wp-json\/wp\/v2\/media\/4484"}],"wp:attachment":[{"href":"https:\/\/cciedump.spoto.net\/arabicblog\/wp-json\/wp\/v2\/media?parent=7681"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cciedump.spoto.net\/arabicblog\/wp-json\/wp\/v2\/categories?post=7681"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cciedump.spoto.net\/arabicblog\/wp-json\/wp\/v2\/tags?post=7681"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}