Asp.Net Core’da NodeJs ile Cross Platform Mvc ve WebAPİ Projeler Yaratma 2

Selamlar,

Bu makalede, bir önceki makalede anlatılan Asp.Net Core 1.1.0 ile Cross Platform bir Mvc proje oluşturma yazısına, gelen datanın güncellemesi ile devam edilecektir.

Update.cshtml: Güncellenecek ticket bilgisi, bir önceki makalede olduğu gibi yine bootstrap kullanılarak textboxlar içinde düzenlenmeye hazır bir halde sayfaya basılmaktadır. “Form” submit durumunda yani “Kaydet” buttonuna tıklanınca, “SaveForm()” action’nına güncellenen “Ticket” modeli Post edilir.

HomeController.cs/SaveForm(): Değiştirilen Ticket datası ilgili WebApi servisine aşağıdaki gibi gönderilir. Gelen Ticket model “Serialize” edildikten sonra “application/json” formatında yandaki WebApi “http://localhost:5000/api/TicketService/” servisine Post edilir. Daha sonra “Index” ana sayfasına yönlendirilir.

WebApi (TicketServiceController.cs/PostData) : Üzerinde değişiklik yapılan Ticket bilgisi, tekrardan sistemin yani NodeJs servisinin istediği hale getirilir. Yapılması gereken ilk iş, para biriminin $’a çevrilmesidir. Ayrıca Türkçe olan kategori bilgisi İngilizceye çevrilir. Buradan da anlaşılacağı gibi, WebApi servisi tam anlamı ile Web Application ile NodeJs arasında bir Adaptor‘dür.

Update.cshtml Ekran:

Node server.cs Console:

NodeJs Server: Aşağıda görüldüğü gibi WebApi servisinden post edilen güncellenmiş Ticket datası, NodeJs server’da “processData()” function’ı ile karşılanmıştır. Gelen data “request.on()” ile alınmış belli bir değerden büyük ise connection kapatılmıştır. Değilse alınan data request.on(‘end’) methodunda parse edilip, console’a basılmıştır.

Bu makalede Os X işletim sisteminde Asp.Net Core ile Cross platform bir Mvc proje yarattık. Daha sonra UI’da gösterilecek bilet satış datalarını, NodeJs bir servisden çekmeye karar verdik. Bu servisden gelen dataların, dil desteğinin ve bilet yapasının bizim sistemimize uygun olmadığını gördük. Bunun için araya Adaptor bir WebApi servisi yazıp, NodeJs’den çekilen dataları bizim sistemimize uygun bir hale getirdik ve ekrana listeledik. Daha sonra Web ara yüzünden seçilen bir biletin bilgilerini güncelledik. Güncellenen bilet bilgilerini önce WebApi servisine gönderdik. Burada fiyat ve dil özelliklerini, tekrardan NodeJs servisine uygun bir hale getirip, ilgili datayı post ettik. Son olarak NodeJs serverda karşılanan, bu güncel bilet bilgilerini Console’a bastık.

Geldik bir makalenin daha sonuna :) Yeni bir makalede görüşmek üzere hoşçakalın.

Full NodeJs Server(server.js):

Full WebApi(TicketServiceController.cs):

Full HomeController.cs:

Source: https://stackoverflow.com/questions/37465815/node-js-error-no-access-control-allow-origin-header-is-present-on-the-request

Herkes Görsün:

Bunlar da hoşunuza gidebilir...

2 Cevaplar

  1. Mustafa Torun dedi ki:

    bir önceki linki yine buraya getiriyor be ya.
    başım döndü. :)

    • borsoft dedi ki:

      Bir önceki linkden kasıt “Asp.Net Core’da NodeJs ile Cross Platform Mvc ve WebAPİ Projeler Yaratma Bölüm1” ise çalışıyor.

      İyi çalışmalar be yaaa :)

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.