Lompat ke konten utama
EP 64

Ngobrolin CORS

Ringkasan Episode

Bantu Koreksi

Episode ini membahas tentang CORS (Cross-Origin Resource Sharing), salah satu topik yang sering membingungkan developer web. Diskusi dimulai dengan pengalaman pribadi tim menghadapi error CORS saat pertama kali belajar pengembangan web, dan kesalahpahaman umum bahwa solusinya cukup menambahkan header di sisi request (padahal harus dari server). Tim Ngobrolin WEB menjelaskan konsep origin, same-origin policy, dan bagaimana CORS bekerja sebagai mekanisme keamanan di browser. Episode ini juga membahas preflight request (OPTIONS), solusi menggunakan proxy/middleware untuk bypass CORS, dan teknik lama JSONP. Demonstrasi menarik ditampilkan dengan fitur Local Overrides di Chrome DevTools yang bisa mengubah response header dan content untuk testing. Episode ditutup dengan diskusi tentang berbagai tool untuk mengatasi CORS dan risiko membangun produk di atas platform orang lain.

Poin-poin Utama

  • CORS adalah mekanisme keamanan browser yang membatasi resource dari origin berbeda (domain, schema, port) untuk diakses
  • Kesalahpahaman umum: banyak developer mencoba menambahkan CORS header di sisi request/client, padahal harus dari server
  • Preflight request (OPTIONS) dikirim browser sebelum request sebenarnya untuk mengecek apakah request tersebut diizinkan server
  • CORS hanya berlaku di browser, tidak di server-side atau HTTP client seperti Postman/Insomnia
  • Solusi umum mengatasi CORS: menambahkan header Access-Control-Allow-Origin di server (bisa * untuk semua origin atau origin spesifik), atau menggunakan middleware/proxy
  • JSONP (JSON with Padding) adalah teknik lama untuk bypass CORS dengan memanfaatkan script tag yang tidak terkena same-origin policy, namun sudah tidak umum digunakan lagi
  • Chrome DevTools memiliki fitur Local Overrides yang memungkinkan developer mengubah response header dan content untuk testing tanpa perlu extension tambahan
Transkrip otomatis Bantu Koreksi

[Musik] hai hai hai hai halo Loh kita sudah lama iya sudah berapa ya du Sudah berapa minggu enggak live ya 3 minginggu

berarti ya 3 Minggu kita live sudah jam 8.00 Kagok Iya By the way Selamat tahun baru iya selamat tahun baru lagi benan ya Iya

ini benan Selamat tahun baru liveingu live lagi di live pertama di 2024 untuk ngobrolin web yah udah ke J

selasa malam karena selasa malam waktunya ngol waktunya ngobrolin boleh I bolehlah ya oke Gimana kabarnya semua mudah-mudahan sehat-sehat e gimana

tahun barunya mudah-mudahan tahun ini kita ya Sesuai apa yang kita harapkan di episode sebelumnya yainggu lalu e

mudah-mudahan semua kejadian teman-teman ee apa lebih produktif ee banyak rezeki ya I dan tidak lupa menonton kita di

hari selasa malam betul jangan lupa nyoblos juga kalauang dekat 14 Februari bulan depan ya bulan depan Valentine C

Valentine libur berarti ya Oh iya libur ya berarti Oh iya libur libur nasional kan Ya libur nasional yang biasanya

kalau kalau e coblos-coblos gitu kan banyak banyak diskon ya Di mallmall ya Oh I kalau kalau nunjukin kalau nunjukin

Oh iya kalau nunjukin motivasiyaos biar dapat [Musik] diskon biasanya yang kopi yang Siren itu tuh paling sering

tuh Siren kopinya Siren yang hijau Oh i i itu kan Siren eh itu kan sebenarnya logonya Siren dulu sekarang masih siren

siren bukan Mermaid oke itu ikan guyung selama ini i ya Oh itu bukan Medusa Ya beda lagi rambut makin jauh rambutnya yang

itu kalau si kopi itu jel merek kopi itu iya ee apa sangat dihindari oleh developer Kenapa gitu Iya kalau ada Bugs

kan kabur kan e Iya Boleh eh boleh boleh boleh boleh sbard dulu sboard sboard sbardbard Oh

Soundboard halo halo semuanya Wah ini ada Nur Kholid sudah sudah hadir keren keren kerenah wow keren Damar yang goldp

warnain pakai pulpen jangan jangan goldp ya milih siapa Wah ini wah kita menganut aset luber dan jord deil ya apa apa sih

tuh perannya langsung umum bebas rahasia rahasia bebas rahasia bebas mau merahasiakan atau mau membocorkan mau mau bukan biasanya

habis biasanya di bilik suaranya difotoin difotoin Oh gitu gu pakai tintanya difotoin terus upload Iya biasanya ada biasanya ada ajakan begitu

kan nanti mereka pada pada punya kayak survei hitungannya gitu oke iya apalagi distoryin Kan udah kelihatan kan jadinya

ya jadi enggak ada rahasia lagi yaan paling Epik tuh paling bawah pilih imre betul gu imre aja L

imre Iya gak tahuak DPR Cang mana dia cabang cabang baltimor dia belum pulang Soalnya dengar-dengar dia mau pulang kan

dia Iya noyoblos asak nyelek bukan nyblos lag tiket tapi enggak tahu tiketnya bulan berapa nanti kita kita

inilah ya kita undang-undang ke sini ya mudah-mundang cuma habis pemilu aja sama dia oh iya review Pemilu Ya gimana ya

review Pemilu review diskonan lah diskonan Siapa tahu kat ada diskonan ya Nah ini bagus itu ok ah kita Sebelum kita semakin mengantur

Iya kita Mau ngomongin malam hari ini tentang eh cor kepbanyakannya apa eh Cross Origin Cross Origin rsnya enggak

in Rumah Sakit Cross Origin sharing Iya yes Siapa di sini Yang tapi bukan penyanyi ya bukan penyanyi apa tuh tadi

gua udah bilang thecour sih tapi ya the Ayo lanjut tah di Oh gr gr lewat itu 20

tahun yang lalu Oh iya kemarin itu ke Jakarta dia sempat ke Jakarta sebelum Iya Dia kan ke rumahnya mas Riza sempat

engak ya bukan ngapain dia jelasin soal cor Oh iya iya boleh boleh boleh ya kita bukan mau jualan online

course tapi ini Iya di sini teman-teman Eh siapa yang belum pernah mengalami error course mungkin mungkin sekarang udah agak

Lihat transkrip lengkap (424 segmen lagi)

kurang ya dulu-dulu ya sering banget gitu kan Apalagi dulu pas baru belajar nyebelin banget itu baru belajarya

biasanya dulu so kalau saya kena ya Cross Origin habis itu pindah e masukin ke aplikasi php-nya headernya Cross

Origin kasih Bintang hal semua Iya iya di Nah kalau gue dulu pengalaman pertama kali ketemu course masih belum belum ngerti ya masih baru

banget belajar terus eh kan cari kan stack overflow caranya ngatasin cor Oh dikasih headernya bla bla bla Nah bentar ada

plot twistnya namanya head ditambahinnya di requestnya bukan dari servernya ya udah terus aja sampai ganti presiden berapa kali mah enggak bakal

bener e Iya harusnya di kalau kalau bla bla blaanya di di pas ngirim request dari client s-nya ya enggak bakal

berubah Lah iya iya enggak e bahkan dulu sempat ada eh apa namanya extension Chrome extension sampai sekarang pun ada masih ya masih ya

Bypass Heeh ngakalin Bypass karena biasanya kalau di server kalau servernya kita yang yang punya itu bisa nambahin jug

itu nambahin header dan lain-lain itu mungkin bisa kan bisalah request sama anak backend gitu kalau kalau yang kerja

ya tapi kalau misalkan terparty api Iya nanti Dar dari Death tool juga bisa yang baru ya Death tool yang baru nanti ada

update-nya nanti ingetin aja kita demo-demo aja B bisa Apanya bisa e apa namanya Ee responsnya kita bisa edit di

de Oh kalau buatetes nanti kita coba nice nah ini ada juga nih Yang berpengalaman kalau kena course dial aja

incure content insecure content em sebenarnya course enggak bisa sih di kalau enggak bisa masalah ya Bisa Beda

kan beda ya harus dari servernya iya ya servernya harus mengallow Origin udah kan definisi course tadi kan Cross

Origin iya sing Nah mungkin biar lebih jelas mungkin kita akan Run through kali ya itu apa Terus gimana cara kerjanya

Kenapa bisa kena dan gimana ee solusinya gimana solusinya untuk supaya ee ya enggak kejadian gitu ya y ini

adalah eh dari website-nya mdn itu Cross Origin resource sharing adalah salah satu properti dari http header yang memungkinkan

server to indicate any Origins Origins itu artinya berarti ini ya domain SK gitu ya Nah kalau misalnya yang masih

bingung Origin itu apa kita kan dulu punya episode ya apa ngobrolin domain ya E url url Oh I ngobrolin url Nah itu

kelihatannya udah kita bedah semua ya Jadi kalau ada yang belum nonton bisa dicari sendiri Iya bahkan port juga

misalkan teman-teman bikin satu server itu di eh eh apa atau Klien Klien ya sesama klien kalau server aman harusnya

ya klien satu Misalkan local host 3.000 gitu kan Terus e satunya lagi 3.002 terus mereka sing berkomunikasi bisa

jadi kena k juga kan He karena ya Apun yang bed Origin itu ya Eh kasarannya gampang ya dicurigain lah

jadi kalau misalnya originnya sama kan Ya udah pasti berasal dari satu tempat itu Udah enggak Enggak ketemu course

sama sekali tapi di luar itu nah bakal ada eh semua proses itu paling ya paling gampangnya itu kalau misalnya kita dari

domainnya kita tuh kita mau fetch konten tapi dari domain yang berbeda Iya e dan domain yang berbeda itu tidak

mengizinkan kita untuk F content dari Browser he ya buver ini server site iya ya jadi enggak memperbolehkan kita untuk

fch content itu e jadi nanti akan keluar e course warning issue Atau segala macam Datanya juga kita enggak bakal dapat

gitu dalam hal ini data.json itu kita enggak bisa dapat I kalau jadi server yang menentukan dia mau

mengizinkan Apakah semua Origin ya bintang itu tadi yang disebut Apakah semua boleh manggil boleh membuat request atau Origin tertentu eh bisa

Diwi list di allow list atau by default kalau enggak ada enggak enggak dispesify ya udah by default same Origin tadi cuma

yang originnya sama ada beberapa loh nanti ada Le Eh terus Strik segala macam itu nanti ada Heeh

Ya dan same Origin always allow same Origin always allow ya ya Dan kalau tadi kita ngomong antar klien kan klien satu

ee dengan klien kedua gitu kan kalau misalkan kita taruh server di tengah-tengahnya itu tetap bisa datanya tetap bisa

diambil Iya servernya kan manggil ke yang berarti itu namanya middleman eh apa midleware ya proi Istilahnya ya proi

bisa karena itu ee ini hanya ada di browser enggak ada diakak ada di backend i i karena e sederhananya semua

data yang ada di klien itu bisa di fch kan bisa diolling kan kecuali kalau di pakai in

autentikasi Dan username password dan lain-lain gitu kan Kalau datanya publ seperti ini data design gitu kalau e

server mau ngambil ya bisa selama ini publ gitu kan meskipun Kalau antar klien ya enggak bisa antar browser atau antar

ya Antar klien lah http pokoknya request yang berasal dari client site dari browser ke server asal atau ke klien atau manapun nah soal

middleware tadi itu jadi kayak jadi landasan lah makanya jadi apa makanya banyak ada tools yang untuk mebypass eh

apa isu course kan ada ada linklinknya nanti bakal kita lihat itu belakangan aja tap yang jelas emang banyak toolsnya

jadi kayak misalnya tools.com dikasih query parameter eh url yang pengin kita Panggil Nah kita bikin requestnya ke tool yang untuk

Bypass itu jadiin Heeh proxi buat kurs oke nah eh sebenarnya tujuannya apa sih ada kurs-ks ini kenapa harus e Kenapa kita kena

error ini eh apakah ada hubungannya sama e keamanan data dan lain-lain atau ada isu lain Lebih utamanya ke arah security

sih security supaya security eh pertama Data kita aman enggak kita hanya mengizinkan itu diambil oleh EE dari yang kita polisi atau kita izinkan

kedua ee bisa ada ee ini kan kayak Cross scripting juga bisa terjadi kalau Oh i ya i i iya oke itu terus biar enggak di

didos atau apalah biar enggak di bombardir sama request yang kita enggak tahu dari mana ya Nah ini domain ini

termasuk subdomain enggak ee masuk engak ya Bisa diinclude subdomains kan ada Ada enggak sih ini ininya ada settingannya kan streigin

poliisy itu bisa include subdomains bisa bisa Strik enggak iya bisa bisa diow bisa di e reject gitu ya itu

kelihatannya ada itu dehroll ke bawah mana ya request Nah kalau request apa aja itu tuh Ternyata bukan cuma f

atau xhr tapi termasuk e apa web font termasuk yang di dalam CSS kita kan suka kelewat dan lain-lain nah terus bawah

lagi ada contohcontonya senario simple request

head engak ada ya ada kayaknya Coba deh ke bawah lagi examp ke atas atas H

ini ini kan bed bed Heeh beda beda enggak ada ya enggak ada di Sin stop stop stop stop

tadi ada itunya tadi kita baca headernya Eh ini Origin enggak ada kasih iya kan dia waktu dia ee request dia enggak ada

ngasih izin ee http course-nya kan kan he jadi by default dia same Origin Policy I nah terus terus kena reject

jadinya kan ini reject ya kondisi reject ya belum belum sih dia ini kan ini request ini ini dulu request Nah ini

baru responsnya itu karena access control all oh Origin di Bintang he semua boleh responsnya tetap 200 karena

Datanya ada cuma si browser akan men kalau dia Iya kalau engak ada Oh browsernya yang oh iya ya baru sadar

responsnya tetap 200 tapi ya E ininya enggak bisa engak BAAK bisa dibaca datanya ya Oh I ada penjelasannya

tuh server return bla bla bla header with access control Origin bintang yang artinya resour ini boleh diakses boleh

Origin siapapun ini yang biasanya saya taruh di engine X udah enggak usah pusing gitu itu kalau yang punya server kan Iya

nah ini kalau itu kan bintang ya semua boleh kan Heeh kalau kita mau taruh Tertentu bisa seperti ini contohnya Yes

hanya sat hanya hanya Oh di sini nanti bisa bintang.vu.example kali ya yes itu juga bisa bisa bisa dalam bentuk list enggak

atau array jadi saya mau Bintang Kalau enggak salah pakai spasi Deh spasi ya Oke kalau enggak salah ya

ada enggak di sini lupa ee bisa meodnya juga bisa di ini tuh bisa Di bisa bisa Diat

jugaesif kita cuma mau men get request atau He ini tadi ada gambar di atas ini ada ininya enggak penjelasannya kita

meloncat terlalu jauh ya Jadi kan kalau request dari klien minta sesuatu ke server minta layout.s minta imageak boleh gitu kan Tapi kalau kita

minta image.png dari Origin yang berbeda Oh ini sama juga ya dalam kanvas di dalamnya sini domain a kalau Heeh di

dalam kanvas kanvasnya image-nya dari domain B itu boleh minta ke domain B Oh itu boleh yang engak boleh kalau dari

luar itu tuh webfont Oh Oke kalau webfone enggak boleh jadi kalau iframe minta ke domain B iframe-nya domain B minta ke domain B

bisa Boleh kan saya Origin Oh tetapi wefone-nya yang di di domain a kan dimintanya dari luar tuh Iya dia css-nya

dari domain a Minta web font ke domain B itu enggak bisa enggak boleh oke oke nah Ini ada pertanyaan bagus

dari Damar kalau dari mobile app clien bisa kena juga kayaknya bisa ya W elektron mobile app webview

ya mobile app enggak mesti web viw bisa yang lain eh ya enggak makud Kalau native kalau native kan mungkin

pakai enggak enggak ada server kan enggak enggak ada server kan cobaak tahile enggak per enggak pernah bikin kayaknya enggak ada deh kayaknya

enggak adaak enggak kena deh nah gimana kalau kan http k Hah kan ini dari brer yang nerapin oh

browser ya kalau kita akses dari ee Postman atau http klien yang lain curel itu kena Enggak enggak ke Bypass

engak kur kur enggak posman kur enggak poman enggak ya Postman insomnia dan teman-temannya Iya dan teman-temannya http klien kan itu Oh berarti browser

aja ya spesifik ke browsernya impementasiin si eh apa si course ini Iya berarti kemungkinan besar mobile app

enggak kena cuma jadi tertarik jadi mikir itu sih webview webview atau elektron atau semacamnya yang Sebetulnya pakai Engine

Browser Kena enggak ya kena mungkin ya H bisa jadi bisa jadi kalau webview mungkin kena ya mungkin ya Apun yang pakai enginnya

browser tapi kalau elektron kalau elektron itu kan ada backend nya dia ada node js-nya di dalamnya jadi ada kayak

servernya dia proxy kali ya kayak semacam proxi heeh heeh Kayaknya gitu kalau elektron Ya tapi kalau web viiew

atau react native atau D enggak tahu berarti kalau pakai ini gimana web assembly belum tahu ya Hmm lebih jauh

lagi tuh apa lagi apaagi I Oke web assembly kena course gak itu itu yang harus kita cari tahu

nanti ya dianggap kayak kan Eh tadi ada kan kasas tuh lag masa ehak server engak tah De coba ya

WhatsApp dia kan bisa jalanin server WordPress kan backend kan e nah belum pernah pakai soalnya Iya cuma nebak-nebak aja sama belum pernah

juga soalnya kena kena Oh kena n Oh ya nih ini nih ini ada dokumentasinya silakan dibaca e jadi harus ada harus di proi ya

berarti ya ditambahin proin eh di bagian itu yang di bagian users itu addition each module mod is to securitycying with a

web browser restri the Origin Policy tetap kena Jadi kalau dia web assembly yang dijalankan di browser dia akan kena kena eh

security yang ada di kliennya maksudnya ini Oh oke karena web assembly juga bisa dijalankan di backend ya Jadi kalau yang

backend kalau di backend engak masah mengikuti kliennya di mana ya kalau di browser ya Sesuai yang di

browser ya terus kita bahas apa lagi nih ini ya Eh kayaknya tadi kita belum bahas preflight request ya Oh yang di

sini itu pright yang dicontoh itu mana di atas eh ke bawah bawah lagi bawah bawah kan tadi udah nih

dibahasah iyaah itu kadang kita kalau kalau misalnya baru belajar juga eh kali Bingung ya ngirim request sekali diklik

sekali yang muncul di kalau kita buka De tools terus apaelihat Network request kan muncul pasti dua tuh sebelum po

biasanya options dulu terus pernah ngalamin juga kalau pakai apa lambda functionnya verel itu kelihatannya dulu sempat ada ya isu lah jadi kalau

misalnya kita cuma bikin eh kan apa sih fun handler kita bikin Handler tuh kalau pakai lambdanya versel kita bikin hand

Kanah tapi e ternyata kena reject kena reject karena pas kita ngirim options gak bisa jadi kita ya tinggal bikin

handler options juga engak tahu sekarang sekarang masih kayak gitu atau udah dipatch oleh vernya nah ini karena ada

request yang option ya Hm unlike simple request prlighted request the browser first S nah itu jadi sebelum ngirim

request beneran yang mau kita kirim browser tuh eh secara otomatis ngirim eh request yang meod-nya namanya options

Nah itu ternyata tujuannya menentukan apakah requestnya Eh aman untuk diikirin Oh kayak ee ngping dulu ya mastiin B

bisa engak ini ini contoh ini Ini contohnya example requestnya begini ya kan He Itu kan post kan metodya post

kenyataannya nanti coba tu Scroll lagi itu dia ngirim option ada itunya balik lagi nah tuh dia ngirim options dulu

terus options methodnya si server ngasih tahu oke hanya boleh Heeh yang boleh po options terus allow headernya header apa

yang boleh dikirimkan juga ada nah terus responnya 204 tuh no content Karena kan dia belum ngapa-ngapain cuma

mengkonfirmasi aja oke Kamu boleh bikin request begini-gini Nah baru bawahnya si post request yang beneran yang mau

dikirim Nah itu di yang ketiga bar i ini biasanya kalau di kehidupan sehari-hari saya ngecek halo terus ya boleh nanya

enggak gitu Oh enggak kalau kalau sekarang sekarang I huruf P aja P gitu Iya apa sih P pink pink Pak ping pu pong

Balasnya apa Kalau ada yang P juga balas P lagi terusnya P lagi udah gitu aja terus nah detailnya seper Baru tahu Iya

Oh berarti P itu adalah PR flight kali Oh iya juga kali ya refl terus kita bahasnya get post sama kita b sama

delete 204 204 l konten Iya atau ada yang nanya gitu kan Maaf boleh tanya enggak lah itu barusan

nanya jawab enggak boleh berarti kita sebeningjawab itu iya oke oh berarti terjawab ya misteri selama ini P itu adalah kepanjangan dari

preflight brutal jawabnya 204 Baiklah oke lanjut ke mana Nah paling e Scroll ke bawah lagi respon headersnya kita lihat

sekilas aja Kan tadi udah dibahas tuh eh access controlow Origin dan teman-temannya terpati cookiesah itu dia nih atau bintang atau Iya udah pokoknya

oneeliner yang ngatasin semua masalah masalah sebenarnya Kalau dari segi keamanan mungkin ini ya belum tentu ideal Ya maksudnya mungkin ada kondisi

di mana kita enggak boleh pakai itu cuma kalau lagi buru-buru dan emang cuma pengin pengin front end cepat kelar Nah

itu di servernya tuh dikasih itu udah selesai semua selesai semua Sema tapi data kita bisa diakses dari

browser lain I iya bukan browser dari website lain dengan tanpa persetujuan kita gitulah kira-kira ya tujuan utamanya k

ini sebenarnya konsen ya konsen konsen jadi harus tahu sama tahu mau sama mau sama suka sama su suka

sama suka ini Ke mana arahnya nih mengirin dan merespons data Oh ad nah cuma kalau expos headers

tuh apa ya belum pernah Pak pakai koma mas R pakai koma berarti originnya kalau mau banyak bisa pakai koma pakai koma

berarti subdain itu termasuk Origin atau domain aja asal enggak dimion domain domain aja misalnya example.com itu kelihatannya semua

domain termasuk deh kecuali kita vo.example.com Nah itu kan subdomain khusus Ya udah kalau misalnya bar.xample.com dianggap eh bed Origin i

ya i i i Oke berikutnya kita masuk ke yang sini ini juga masih penjelasan ya k itu

apa ini contoh-contohnya tadi sebenarnya sudah kita bahas juga sekilas ya ini mirip sama yang tadi cuma lagi-lagi e

penyakitnya mdn sih mdn itu kan lengkap dan teknis dan bagus tapi itu lebih ber guna kalau kita sudah paham kalau belum

paham tuh kayak bingung nyarinya di mana Nah kalau ini kayak lebih catchy aja kayak lebih apa Ya gampang di cna ini

pertanya Mas Riz tadi nih your access Yes ehh Oh iya ini ya subdain dari atas dari atas Coba dari atas dulu tuh the

following table show the same or will be applied to normalwebsite.com Oh example jadi page-nya example HTML dari normal

website kalau ke normal website example saja bisa example du sebeda subfolder masih bisa tapi normal website bed SK beda

skim https https ya https sudah enggak bisa beda subdomain sudah enggak bisa beda domain ini sudah dianggap domain ya

different domain berarti ya Iya jatuhnya ini beda domain kan Iya heeh ini juga beda domain bed beda beda Origin Ya beda

Origin Iya beda Origin ini beda juga pnya I Origin Origin I Origin Internet Explorer will allow this

access because I does not take account of the port number when applying the same Origin Policy Jadi kalau ini masih

bisa di ie tapi Internet Explorer yang sebelum ya kalau kan udah chromium base kan he namanya bukan internet Age namanya internet AG

II juga ya jadinya Ya iya oke Ini contoh-contohnya cara aksesnya terus ada ini ya xping Add ini yang tadi

ya itu custom header Jadi kalau misalnya apapun apapun yang header kan ada x-nya i ya bebas bebas He preight

ini ya preight request yang tadi ya dan biasanya ya kalau ada company yang kalian kalian kalian ingin apply cek aja

headernya siapa tahu we are opening tuh ada di header biasanya atau di konsol di browser Iya yang sering

di kalau di konsol terlalu obvious biasanya yang lebih dalam lagi di header dia taruh Oh gituing atau X hiring gitu ada lucu

banget jadi yang yang tahu hanya yang ngulik ya Iya dia buka G nih buka buka Def tu gitu target audiens-nya

developer H ide bagus itu Ida Bagus tuh di Bali Mas Ida Bagus itu kalau Ida [Tertawa] Bagus ini tadi udah juga kita bahas

sebagian besar sama ya cuma enak aja dibacanya nih nih Kenapa butuh bisa gimana cara exploitnya itu gimana

coba the real attack Attacks require access control allow credential to be said to be true to be said to True

because this will allow the browser to send the credentials and read the response Oh without credentials many

Attacks become irrelevant It means You cannot write on a user cookies so there is often nothing to be by making their browser issue the

request rather than issuing it yourself Oh Jadi sebenarnya gak apa-apa ya kalau kasarannya tadi tuh apa low bintang itu

ya relatif gak apaapa ya sebenarnya gak apaapa di luarak di luar kemungkinan kalau di kan tetap apa di bombing request yang banyak gu ya

tetap bisa maksudnya tetap ada masalah security tapi bukan terkaitedenal bukan terkait kayak data-data sensitif cuma ya kayak

database kita kan B down atau mungkin tagihan cloud-nya bakal bengkak Kalau misalnya dibombardir request Nah itu tadi itu bahayanya kalau apa tadi header

credentials allow credentials SH to be true Nah ada head ada berarti ada header lain yang diset through jadi kayak Eh

credentials-nya kayak token dan lain-lain tuh kayak bisa dibaca ya oleh server berarti user Cookie oleh browser oleh Browser

user Cookie bahkan belum pernah pakai itu sih belum pernah pakai header itu sama sekali Nah kalau ini pokoknya yang di

halaman ini tuh berkaitan di bagian ini berkaitan sama pertimbangan security-nya Tapi jujur belum pernah ngulik sampai security-nya

sih kalau iframe kena juga berarti ya kalau beda domainnya Ken Iya beda Min Oke Jadi kalau misalkan ada iframe atau

pokoknya yang request lah ya khusus yang request ke eh domain yang lain ya Origin yang lain itu harus dicek

juga nah ini benar nih kata Damar konsol buat yang higher front end header buat back end betul betul betul benar benar benar

make Sense Sense oh bisa pakai bypass-nya pakai regex yaem.com Oh bisa dibikin begitu bisa

Advance gini ya ini apa nih the following table content special characterter list with the current compatibility Oh yang hijau cuman Safari hijau

semua itu apaan yang boleh ya boleh di mana nih Bypass regex Bypass if you f domainf.com to bewi listed You should check

victim.com.acker.com isel Oh ini ada ceritanya di sini kita engak baca jadi enggak dapat konteks Coba baca a pengin

tahu masalah securitys soal Kenapa penting kayak tanya Mas Kenapa penting course karena tadi saya bilang kan karena bisa crosspting ya ini

penjelasan baca ya kita gak akan gali lebih dalam karena sudah agak di luar konteks sedikit next ini adalah jawaban ST

overflow yang cukup membantuom in Zoom inom pertanyaan Inya kenapa kenapa ada k-kan I intinya I'm trying to understand kenapa

error pas pertama kali ketemu course pasti apa eh alur mikirnya dariak mikir dari sudut pandang servernya karena kita kan lagi ngerjain

C side request ya kita lagi fokus di ini requestnya salah apa kok tiba-tiba gak bisa e sebelumnya di atau di bisa-bisa

aja padahal ini kan sebenarnya dari sudut pandang servernya untuk pertimbangan ini nih ini tadi ada pertanyaan saya berkaitan

dengan http klien yang lain selain browser itu eh tidak menggunakan s Origin atau course request made from

this other http client don't have an Origin unless the po desktop emul a browser it willble to requ any URL nah

ini yang sering bikin bingung kalau belum tahu soal kurs kan tadi dicoba-nya bisa Iya begitu di Kak bisa tadi di bisa

Diman bisa tapi kalau di pakai javascript kok gak bisa pusing sendiri ini kenapa gitu ujung-ujung and the orig POC A Browser

does notlicit trust the websitequ website karena kan Semua orang bisa bisa buka browser Eh bisa jalanin vch atau jalanin CLI request dari

browser ke server manapun ke Origin manapun They don't protect the Origin S they protect the s receiving the cross

Origin request this is itu si servernya resour sedikit mengenai Crosses kan misalnya gini anggap kalian punya punya

situs terus ada com bo anggap ini e zaman saya kita belajar bikin form komen ya zaman itu Jadi kita gak saniti

gak clean apa yang dimasukin user jadi misalnya saya masukin kode javascript ke com Bo dan saya masukin

itu Anggaplah kita sayaukin benar-benar Mal code ya Mal mengambil Cookie dan mengirimkan ke server saya contohnya ya kan yang

terjadi adalah begitu Ee komen saya di up tapi kan gak kelihatan apa-apa tetapi di back di background javascript saya

dieexecute oleh si pengunjung bukan oleh si pemilik pengunjung kan pengunjung halaman itu semua pengunjung yang Membuka halaman itu Iya Akhirnya saya

bisa ngambil cookies bisa ngambil analis analitik apa segala macam dan cross Origin mengirimkan ke Cross Origin ke

situs saya tempat lain tempat lain Nah itulah maksudnya Eh yang diprotect oleh si browser kalau tidak satu Origin saya

eh script apapun itu enggak Boleh request enggak boleh post ke tempat lain kalau tidak diizinkan oleh si eh pemilik

Origin pemilik domain atau pemilik server pemilik resource yang menerima request itu ya betul Iya ya Oke Oke jadi

itu bahayanya ya kalau kita allow semuanya gitu ya kalau kita allow Minang Ya semua kena bisa Bisa kirimkan gitu eh

iya benar Oh ini hampir sama konsepnya hampir sama seperti SQL injection kali ya enggak heeh tapi di front end Iya

tapi di front end beda kalau SK itu kan B kita men-submit sesuatu yang diterima server untuk dimasukin ke database dan diinject ya

kan betul ini enggak jadi eh ininya karenaj kontennya tetap masuk ke database seseorang tetapi waktu dioad javascript-nya dijalankan dan

mengirimkan data ke tempat lain i ya gitu oke oke benar benar oke terus eh pembahasan berikutnya masih sama

tentang course juga ini artikel ya artikel yang berbeda course itu apa kita enggak usah bahas bagaimana cara kerjanya ya ini ya

Nah itu juga sebenarnya kayak tadi cuma kata-katanya lebih santai aja Le ini kayak kayak ngobrol gitu ya jadi BR Heeh

eh saya mau query ya Apa ini request gitu mau fetch Eh tapi apa nih but i'm supposed to

block it Iya browsernya kan melindungi tadi kan eh browsernya harus memblokir unless kecuali server bilang boleh kok n

Oh ini yang tadi prefet ya Ini tadi prefage ya cek dulu saya ngceek Nih servernya bolehin Enggak saya ngambil

data dari kamu gitu ya Heeh eh terus si servernya bilang ee coba cek di sini request kamu ada di

sini enggak ya servernya bilang pokoknya e yang boleh yang boleh bikin request tuh domaina.com method-nya boleh get

post options delete validasinya durasinya 10 menit Terus browsernya Oh ya betul betul boleh lanjut Iya nah begitu boleh kita ee kirimin data

sesuatu akhirnya po nah ini kalau ee berbeda kalau berbeda ee Saya mau kirimin sesuatu ke ee domain yang lain apakah boleh kalau

tidak boleh Tolong dikasih tahu dikasih tahu servernya juga sama bilang Cuma boleh domainom metodnya ini ini ini

validasinya begini terus browser kan ini jadi eh mekanisme yang diimplementasi oleh Brow makanya tadi kan kalau di

environment lain enggak berlaku browser bilang oh jangan berarti ini ada ada sesuatu yang mencurigakan pokoknya enggak seharusnya Jalan diblokir oleh

browser berarti ini murni interupsi dari browser ya Heeh dan e yang mengirim error di konsol adalah browsernya bukan

servernya servernya kan belum ngesons pakai error kan enggak ngespons apa-apa kecuali e responnya cuma bilang yang Boleh request itu ini ini ini dengan ini

Iya bahkan eh responsnya itu 200 kan 200 itu berhasil tapi di blok datanya gak bisa kita baca karena

berbeda originnya request the all

domain eh apa post ya iyaay kalau kan enggak ada optionsnya bukan bukan yang tetap ada cuma coba

bacain tadi yang Man atas atas itu Not all request Trigger pref request eh oh ya get request gak Trigger tapi

engak langsung post request dengan eh form URL Iya biasanya form yang di-ubmit ya form yang disubmit ya

I Alasannya karena itu adalah itu dianggap sebagai simple request nah terus daftarnya nanti bisa dicek sendiri nah ini oh you can only allow one

domain domain ini dari mana PSP ini contoh P di server ya tambahernya Origin Oh engak bisa langsung kayak misal di engine X gitu

enggak bisa dong kalau itunya banyak ini dicek ya ini ini middleware kan semacam middleware kan dia ngecek header terus

kemudian dia tampilin kan kalau ada dilup aja semua header key-nya dimasukin satu Keu kalau ada maka ini dinamis ya

jadi lebih dinamis ya heeh tapi enggak bisa akses control allow Origin tik2x eh domain a.com domainb.com enggak bisa

berarti oh iya ini ini lebih lebih familiar ya kali ya buat teman-teman ya javascript ini nojs ya ini nojs hampir

sama ya kurang Lebi sama caranya gimana Terserah yang penting kita bikin headernya ya eh jumlah headernya jumlah

header access control allow Origin sebanyak domain yang pengin kita allow Saya yakin teman-teman pasti menggunakan modul atau library yang namanya course

di Express Enggak usahai beginiegini ini ini ini cara manual ya Ini cara manual ya sebenarnya eh middleware course itu

ya Ini sebenarnya He tapi kita pakai cara manual jadinya ya Ee agak enggak panjang juga sih maksudnya cara kerjanya kayak gitu k

kalau kan dry do not repeat yourself Ya udah pakai aja library yang udah ada yang penting kita paham I termasuk is 13

is1 ya Hah itu kan is13 is1 JS Oh nm library aneh kapan-kapan kita bikin Yuk episode library penting Enggak

penting berar kapan ya si NPM menerapkan ini ya dilarang upload Bukan dilarang engak penting Oh iya eh iya bukan

dilarang lebih ke dikurasi ada approvalnya Oh kayak web store gitu kayak App Store gitu kan diapprove dulu dicek karena kan

banyak kasus ya ya bukan hanya di NPM sih ya di Python juga pernah kejadian di ruby saya enggak tahu saya

pernah dengar yang kayak faker ya Iya faker terus ada masuk-masukin apa namanya E mining ya kan banyak kan gitu

ada yang memanfaatkan Taipo dulu pernah ada mongodbi Taipo Nah itu masuk ke mana ya jadi kayaknya kurang dekorasi aja

gitu sayang banget Padahal kalau dekorasi pun bisa aja masih bocor gitu kan tapi ya mungkin ee ini ya apa ada bisnis modelnya lah

bisnis modelnya kalau harus kurasi kan orangnya banyak ya butuh ya oh Cuma kalau NPM kan emang dia jualan private

registry juga Kanang jualan Iya J Jadi kalau misalkan mau aman ya sudahudah jualan e apa organisasi Anda mengkonsumsi dari

registnya sendiri kurasinya segala macam ya diserahin ke yang jalanin si organization private itu kan Ya betul Jadi bukan klien yang melindungi server

tapi Browser yang melind browser melindungi klien dan server juga kan Jadi maksudnya kalau si servernya tadi enggak konsen tuh bilangak eh Saya cuma

mau menerima ini ini ini ya browsernya Tahu Diri engak ngirim request lagi kan kalau emang ggak diterima

nah ini ada ya WK WK WK WK WK WK webview itu apaan coba eh ini adalah webview untuk e

iOS namanya wk webview kenap Nam gak tahu kepanjangannya apa itu that a web viw with Cordova or ionic Android Won give

you any trouble but the new wk webw wk W iOS requ Oh yang iOS butuh yang Android

tidakgalan andid another alternative is not to make request in your app and use aordova plugin request ada disedain jadi

mekanisme htp request di tuh kayak ada ada proses Ada ada itunya sendiri implementasinya sendiriakin ee react native flutter dan teman-temannya juga

menyediakan jadi bukan pakai fetch bukan bukan pakai browser sama aja kayak elektron tadi elektron juga di dalamnya

tuh ada notjs Jadi kalau kita mau file akses segala macam itu pakai fs.open gitu-gitu jadi ada servernya lah ada

servernya jadinya harusnya aman Oke Kenapa sih kasusnya belum pernah eemu F System On Chrome and Safari tap gak Firefox if you make a

request to local file Firefox an webkit bas browsers like Chrome or Safari will Consider This is security

and block toal oh local file kalau kita fch di Firefox aman tapi di Chrome atau Safari itu

kena itu kan berarti kan beda skim harusnya ya secara secara SP Ben firefoxnya yang berbeda pendapat sendiri I ini ini kalau

teman-teman penasaran kenapa Sir dan Fari eh apa base-nya sama webkit kita sudah pernah bahas ya tentang browser ya

jadi itu forking forking webkit dia bikin Chrome Safari pakai webkit nah webkit bapaknya dari si E Browser Iya apa sebelumnya kde

environment kde ya Iya dari dari Linux ada desktop environment namanya kde ada browser namanya k browser Kalau enggak

salah namanya bukan netscape ya netscape jadi netscape dari Firefox lahir Oh netcape Firefox iya oh Firefox Iya itu

satatunya masih Bert masih bertahan dengan browser engine yang berbeda untuk saat ini adalah Firefox Firefox Melawan Dunia yang lainnya udah mirip-mirip ya

tapi semakin ke sini semakin berbeda ya E antara webkit heehr atau chrum sudah agak berbed I agak sedikit berbeda berbeda visi

makanya saling apa mereka working kan Oke berikutnya apa lagi nih protokol http protokol ini adalah bagian dari web

standar ya Heeh Ya itu kalau ada yang iseng banget Pengin lihat eh apa spesifikasinya jadi e si ini bukan

maunya ya tadi walaupun banyak browser engine yang e apa semua browser engine mengimplementasikan course ini sesuai pfsir sesuai cara mereka masing-masing

tapi course ini bukan punya bukan milik browser vendor manapun jadi ini spesifikasi teknis Emang bagian dari speknya

sctp Iya terus nah 3.2 tuh for Protocol oke ituus tadi yang kita B tadi Iya versale fetches fch that

possible with html form Element the course Protocol Exist it is layer on top of http and allow response to declare

They can be shared with other originscare Finya adalah respons dari server atau resource-nya itu mendeklarasikan oke eh saya mau

membagi respon dengan Origin tertentu H oke Terus kalau kita apa tadi kita masih bahas tentang ee preflight juga

optimizing course technic for bypassing course preflight request to improve performance ini berarti ada kaitannya dengan performance ya n kita harus kan

pasti makan waktu kan apa prev dulu terima respons terus habis itu baru kirim respons eh oh jadi yang tadinya satu kali

request jadi dua Iya jadi ada dua request ya request respons walaupun sebetulnya mungkin in real world ini 0,0

berapa detik sih ya kalau request kan tetap ini setiap request kita lakukan ini I setiap request kecuali get ya

he kenapa itu contohnya pakai g ya tapi iya iya salah oke caranya gimana ya pertama adalah caching heehing itu adalah menyimpan

data terakhir I tambahin ini ya jadi eh datanya udah e apa Di sini masih valid atau enggak Kalau masih masuk ke Eh

umurnya 24 jam masih berarti masih dianggap sebagai valid jadi enggak perlu previde enggak perlu ngecek bisa langsung get nah cuma ini enek juga

karena karena toh enggak di preflight dan yang bisa dik Ca get Ya masa mau diashing gak mungkin juga kan Nah jadi

kita skipnya adalah e apa namanya kekurangannya adalah with one should be aare ofnya bat ada cas cas key browser Keys

case by http method and url as if you are accessing control Cross Origin backend and make multiple api with

variable set ofying parameters then cching will have little no on performance tetap aja dia akan request karena variabelnya itu pak

stringy ya berubah berbeda terus berbeda terus jadi kalau kita siapa nih yang sering melakukan ini wah ini kok cching

kok k datanyaak berah mungking kita tambahying supaya saya sampai sekarang masih begitu Itu kan cdn enggak Mesti cdn kadang-kadang kalau

kita main back sama dengan S Iya mungkin kita lupa ya di Def tool itu bisa diisable ya Jadi

pada saat kita buka Dev tools itu by default itu enable memang tapi kita bisa bikin itu disable di mana di sini ya ni

disable Cage I iya ya bukan itu aja jadi enggak perlu pakai yang tadi ctrl shift r oh

udah hafal yatrol kalau Windows ya kalau comand command shift kalau di Oh iya command shift or kalau kita buka apa E Chrome

Dev tools kita pencet yang lama difresh itu dia muncul kan normal refresh pop upnya refresh sama MT

refresh itu ada juga i itu juga bisa paling gampang inkognito aja betul oke nah strategi dua tuh lumayan

Overkill juga sih tuh lucu banget bikin iframe iframe-nya same Origin nah terus kita bikin listener event listener untuk

mendeteksi apa tuh kayak respons dari dalam ifame ini lumayan kreatif ya Heeh akal-akal mtir Ini ya ya berarti ya

Heeh wah seru ini malah jadi kayak itu loh kayak kalau pakai service worker Itu loh eh Apa add Event listener eh kirim message

post pakai apa method post message ya ya ya I iframe loading iframe browser overhead repot multiple request ya

strategi ketiga yang paling umum dipakai ini kelihatannya ya middleman middleware ya Ada proxy Jadi kita tetap menggunakan

apa namanya Origin kita Nah si server yang ini yang berurusan sama ee luar sama dunia luar ini yang

paling yang paling ideal kali ya cukup eh cukup umum cukup umum yang paling ideal tapi kita butuh resource untuk ini

kan maksudnya Ya enggak gede sih tapi ya tetap butuh maintenance servernya setup-nya harus update juga dan lain-lain kan atau kita bisa pakai

service yang sudah ada tapi ya kita bergantung ke third party service yang gratisan juga ada tapi ya itu lagi-lagi

Eh udah gratisan eh Nal service ya apa ada risikonya ada kalau dia tiba-tiba hilang kita pusing terus eh

belum Kalau urusan data Sensitif atau keamanan atau apa kalau mereka kena eh security Bridge kita bisa Repot juga

ikutan juga karena Iya Azure Front door or aws Cloud front gcp mana gcp apa ya GP ada kan

enggak ada ya Ya enggak tahu engak tahu enggak tahu Oh enggak tahu ya I besok-besok kita tanya Kei tanya Mas I

kalau mau sendiri ya Bisa Iya cuman kan udah ada cuma yang terima jadi Heeh kalau Cloud flare termasuk enggak

enggak ya Cloud flare proxy juga kan dia cuma engak proxi Iya tapi dia bukan ke dia enggak bisa bukan untuk dia untuk

dedos untuk gitu-gitu kan heeh Dia hanya bisa proi proi ke Origin dia gak bisa proi ke ke non Origin

Oke strategi keempat refactor to simple request ini lebih mahal biasanya Nah tadi Oh kalau belum tentu bisa juga kan

reftor ujung-ujungnya refor ya kan belum tentu bisa juga ini yang kita tadi kan get eh atau post tapi yang dari form

yang jenis datanya apa url formc ya simple requestqu yang t

html can submit simple request to any Origin so anyone wting a server must already protected against crosside request forgery

csrf kalau teman-teman eh tidak mengalami atau belum mengalami ini biasanya di Framework itu sudah ditangani ya termasuk juga lain-lain ya

Ada helpernya ada helpernya number oh tadi udah kita baca ya Iya tadi kita bahas tapi dari artikel Sya

nah cuma kan itu cuma ngelink kalau pengin baca detailnya soal simple request ya itu baca di mdn Jadi kalau Pak get aja at bisa

langsung tapi kalau misalkan enggak ya harus pakai preflight ya Heeh simple request example ini pakai get Nah kan enggak semua operasi bisa

pakai get doang kirimin datanya gimana pakai header ya Kirimin datanya kelihatan dong Eh kalau datanya stringor kalau datanya enggak Enggak

penting kredensial Enggak penting ya Enggak masalah kirim ya kalau enggak penting ngapain kirim ya kalau isi pos itu kan penting

juga cuma ya emang tujuannya untuk pakai Git Nah kalau kejadian Terus eh teman-teman misalkan kena ee masalah

cors kira-kira apa yang terjadi Hah 12 tahun 3 tahun yang lalu 12 tahun itu 12 tahun lalu profileennya itu oh iya oh

iya wow ya 10 tahun lalu Enggak berubah ya karena ee apa spesifikasi hctp ya gitu-gitu aja sebetulnya no JS proxy Which adds course

header to the proxy request jadi ini kita bikin server sederhana di local host ya atau di tempat lain terserah

untuk ee membuka itu ya yang tadi ya berarti yang ini ya yang ada di tengah-tengah tadi yang middleware tadi middleware he

iya ya ini jadi kita bikin server ini itu salah satu solusinya Jadi nyediain tapi Pak heroku Gak tahu

masih hidup gak ya dulu pakai heroku gratis pakai sekarang pas udah B Oh masih we mantap coba harus tempor klik

only requ kan Hero gratisan sekarang udah engak ada Oh iya dia bayar berarti kasihan tapi di bawahnya ada lagi nih

this demo shown How to use the api kan tinggal belakangnya dikasih query aja kan e url yang pengin kita

tuju iya misalkan apa enggak tahu apa enggak punya contoh example api example api ya Apa aja L ya get mah aman he Ya gitulah

pokya Cara pakainya I kalau misalkan nanti mau ee apa form gitu kan ee apa submit form tapi ke Origin yang berbeda

bisa coba pakai course Anywhere ya dh.com ada satu lagi ya ada satu lagi oh ini ini kode

ya Iya itu dasarnya yang yang lengkap banget pokoknya segala service proxy buat eh apa itu ada Cloud flare course CL course

anyw Baru tahu ni aja klik aja Ke mana perginya Oh ini bulan yang lalu Ah unoficial tapi iya

iyaal jalan di ini pasti di di ed-nya cloudf kali ya Oh di workers itu deploy ke workers

Cloud betul betul koworker workers. Dev ya oke terus ada apa lagi course Anywhere all Origins possibly

that mungkin sudah ya itu tadi resikonya pakai layanan third party ya tiba-tiba dia bisa mati kapanpun k untuk ini untuk

kalau beginian kan untuk development aja Oh kalau E ini Eh ini kan server site ya kalau cuma development di lokal mah

pakai extension browser aja sih yang lebih cepat Iya benar car ajar Chrome extension Bypass course pasti banyak tuh

yang muncul kan Tapi buat di lokal ya buat apa development kan pure development Terus kalau buat production

Gimana caranya kalau mau misalkan nih pada saat develop kita pakai itu pada saat ke server gimana harus pakai

service ini Iya itu tadi pakai service thir party atau bikin sendiri ya kita bikin sendiri aja middleware I berarti itu hanya untuk tes

bahwa Eh masalahnya di situ ya memastikan Heeh Ya terus kita kan He kita cuma pengin develop UI ini pengin lihat uinya Muncul

atau enggak misalnya Oke ini ada salah satunya ya salah satunya nah ini dulu sering saya pakai nih buat

demo kalau kena corse pakai tunnel pakai tunel tanel itu berfungsinya kayak proxy juga ya berarti sama ya dia ada dia ada server kan

Yes tunel itu kan buat kayak VPN Gitu kan ya tuneling dari online bisa ke lokalal betul betul bisa bisa itu kan

jadinya server juga kan heeh berarti apapun punya Biar enggak langsung dari CLI site dari browser ke resource atau

server yang dituju kan yang penting ada sesuatu di tengah-tengah kalau ini apa namanya ini nanti saya demoin ini nih

kalau enggak perlu lagi pakai extension extension Langsung aja cari bisa dari cari Contohnya apa ya oh cari

contoh II ya Oh ini enggak ah terlalu Rib CG ya entar entar example Api Lah ini e apinya Open ai lah Nah nah nah

bisa bisa Sini coba kita contohin sama-sama yuk demo demo demo demo oke Oke yuk entire screen aja biar gampang

hidupnya Share screen e Nih dari si eh apa namanya zoomom in jadi si Death tool itu kita bisa

hidupin dan bisa override content sama override header contohnya di sini ya Oh bar tahu ini inspect e kalau kita lihat

zoom in dulu zoom in zoom in zoom in enggak kelihatan kelihatan kelihatan Oke kalau kita lihat ches ada

list.json ya kan kita bisa lihat eh respon headernya sama respons eh headernya coba kita lihat request tadi

kita lihat eh netlify strict transport cuma gitu doang sih enggak ada Nah kita bisaalnya show override content sama

override header kita coba override content dulu ya Nah select folder eh oke bisa ngambil dari local file ya

nanti di local file list jsonnya itu di local file ini lihat ya saya coba ngob web Oke kita save panjang kita reload

copy diskon setelah jadinya itu nah satu sisi lain kita juga bisa ngerubah Ee kita baca selanjutnya deh pelan-pelan

itu untuk override content ya kan kita select foldernya nanti dia akan save file json-nya itu di foldernya file jadi

nanti inad of jadi si Def tool itu dia ngambil dari server enggak enggak ngambil dari servera tapi nge-load yang

di lokal dari sistem kita yang udah kita pilih terus bisa juga kita override eh respon Sher respon Sher ya yang dioverride

bukan request-nya kan berarti Yes kalau requestnya ngapain kita bisa rubah requestya kita kalau Iya Jadi maksudnya apa kalau Tadinya enggak boleh aslinya

enggak boleh dari server tinggal kita override jadi boleh kan jadi bisa Iya Terus Ya betul sekali ini ada banyak

header yang bisa Cross Origin permion Policy Cross Origin ass header juga bisa kita rubah contohnya ya respon

header-nya eh kita Klik Kanan override header Nah kan langsung bisa ditulis nih E Bisa diini nih oh iya i misalnya kita mau

tambahin eh tadi apa allow akses Apa sih tadi gak pernah allow Origin contoh ya AC terus tapi kita bikinnya https cofy

card c- c. google.com contohnya ya kan harusnya enggak working dong refresh error salah entar refresh harusnya error tapi kok enggak

Error E karena ngambil datanya dari lokal iya enggak iya pak kita ee Iya juga kali ya Ee bisa jadi kita

responsnya coba di dibalikin lagi ke semula Gimana caranya Hapus dulu ya kita hapus kita eh Lagian kalogate kelihatannya enggak ng

bisa kan kalogate kan heeh Coba ya kita saya sudah hapus yang lokal harusnya enggak ada ngobrolin web

nahak ya Network listnya masih dapat kan Engak bis Iya kalau get kan bisa normal harus yang pos susah bnya kalau

pos ya entar coba sendiri pakai po lah kalau G kelihatannya enggak pernah pakai bikin aplikasi harus bikin itu Iya bikin

form akses kontrol allow Origin https Wi Ini kan dari originnya dari si kficat.app kalau Oh maksudnya kalau ada

script misalnya gini kalau ada script dari sini fetch ini enggak bisa Oh gitu ke google.com eh bukan ke saya ke source-nya itu tadi

kan ke source-nya si Lis coffee itu kan coba ada gak yang pakai petik pakai petik pakai petik example api example

api Nah swapi swapi Oh I swapi Star Wars api holder pakai tanda petik tuh jangan lupa Iya

SW nah ini tapi itu G doang gak apa-apa itu aja swapi.dev/api/ people SL sat petik petik petik Nah itu siapa look

Skywalker ya people yang ID S Iya kayaknya kok dia engak mau sih swap enggak mau swap https enggak dikasih iya

tahu dia enggak ngasih enggak boleh yaak boak swapi.dd/ api/p/1 bisa bisa kan a wait await

Enggak diwait soalnya a wait duluit F bisa kan langsung kan udah nah terus enggak ada keluar hasilnya Oh di sini

keluarnya bisa muncul ya tapi dia ee headernya apa karena kalau Origin bentar bentar saya cobacoba Oh mau diit

offri offri tapi hanya boleh dari google.com google.com kita coba lagi sekarang Coba lagi harusnya enggak boleh s ohoke

oke itu cara [Tepuk tangan] kerj demonya berhasil demonya berhasil iya orang ngemo supaya bisa byp course kita supaya supaya course supaya

cor supaya error lebih susah loh mendemokan supaya Error itu lebih susah tadinya Benar Jadi eror salah tapi kalau dipikir-pikir De tools

tuh makin lama makin canggih ya buat recording apa eh user Interaction flow udah ada buat override eh

apa udah ada lama-lama extension enggak laku Eh betul saya waktu belajar ini senang banget karena saya daripada bikin

faker-fakeran segala macam saya langsung aja dari sini ngetes segala macam save terus tada spso Tes Iya benar

juga sekian demonya dan terima kasih ye Nah kalau yang jesanp ini perlu dibahas iya ni apa nih tanggung perlu

karena gua enggak ngerti itu apa ini kalau ada yang mau baca soal Death tool nanti bisanya tool untuk Oke Dan kalau nanti

ada yang mau lebih bahas lebih dalam mungkin itu jadi topik io Extended saya We bisa bisa bisa bisa apa yang baru di

Death tools gitu ya Iya nah oke Jason P nah Anda pernah tahu Jasson P bukan Jason udah pernah bahas kan sempat bahas

sedikit di konfigurasi file kan sebenarnya kan Iya heeh kita tapi ada pern pakai Enggak ini sering saya pakai dulu

sebelum ada k k coran saya sebelum masudnya untuk Bypass course Oh ya Jadi begini ceritanya eh Jason P itu artinya json

With padding ee oke kalau misalnya saya ajak nih tetapi mau kayak gini contohnya Saya mau ambil dari Twitter timeline dulunya atau mau

ambil dari list dari e third party api yang tidak mengizinkan allow Origin itu tetapi dia ngasih bisa data typya

json dia gak ada belum ada headerheader course dia kasihapi dia memperbolehkan Jon atau aplikasi Saya sendiri dari

domain berbeda dan Eem daripada saya pakai allow course saya pakai Jon P format cara jadinya begini Scroll nanti

e terus terus terus terus Jason P json with padding how it works ya How does it work

e kalau kita json biasa tuh seperti ini turun seperti ini kan first name last name kalau pakai Jason P itu ada

callback yang akan membuat dia jadi string oh Oke e Turun lagi e ini error kalau e Turun

lagi dia akan Nah ini dia jadi call back name e callb name itu whatever ya Apun stringnya Terserah mau ngobrolin web

terus kurung terus baru jonnya itu nanti akan jadi window object turun ke bawah ini absurd nah ini Bypass si course karena karena

ini adalah karena dia dia tidak termasuk dalam polisy itu konten termasuk dalam pol spesifikasi hctp header bla bla bla

itu apa ini ini enggak masuk deteksi itu ini kan callback ya Kenapa namanya padding kir pakai spasi

bayangin CSS atau apa padding atauud Jason kan spasi saya Kenapa namanya Kenapa namanya padding I sama kayak

Kenapa Java dan javascript ya kayak gitulah pertanyaannya itu sama itu artinya saya enggak tahu Eh kalau javascrip ada penjelasannya kan dulu

Java lagi ngetren jadi kayak Ya udahlah kasih aja n kasih aja nama ada javajavanya formatnya formatnya tetap

Jason mungkin dikasih pedding Kenapa padding Iya Kenapa namanya Pading gitu k Jason C Jason with atau Jason F Jason I don't know Iya

ini nanya ke yang bikin Sebenarnya dia akan akalan aja supaya Bypass itu sih karena jadi jadi objeknya si ini objeknya Windows script

Jadi bukan Jason data dia Iya Yang kita permasalahkan bukan ininya yang kita permasalahkan Kenapa namanya Jason padding

Pading adaada aja enggak ada jawabannya enggak terjawab engak ada jawabannya iya ya maklumlah e yang kasih nama kayaknya

developer ya Jadi ya Heeh itu P itu kata Damar tuh kayak Siapaan 204 204 20 pright get option Del oh Jon pright aja

bagus namanya j p juga tapi bukan Pading Oke Oke jadi sudah jelas e tentang course malam hari ini mudah-mudahan dapat

pencerahan lagi ya kayaknya kayaknya semakin ke sini ya orang sudah semakin teredukasi error Jason e apa error Jason

error course itu apa dan solusinya Seperti apa Kalau dulu kan kayak ee kita masih belum tahu misterius kan

wah kaget langsung ini error nih Sembarang kius overflow Iya kita cobain di http klien pakai cural pakai Postman

dan lain-lain Kok aman gitu ya kenapa ini salahnya di di kode front end kita kah atau gimana gitu kan sama kayak sama

kayak dot def-nya Mas Diza ini pakai cural bisa 200 https http Iya httpdomain.f pakai CH bisa pakai POP bisa loh browser engak

bisaid ke https masalahnya itu Dod kan enggak cobain domain yang lain kan jadi kita enggak tahu enggak bisa membandingkan Ya

begitulah jadi ee solusinya sudah lumain banyak tadi ya I browser mistery browser ini adalah salah satu cara browser ee

apa ya memproteksi ya mengamankan ee ya semua penggunanya pengguna baik dari klien dari server Iya kalau yang paling gampang

throwin server kenapa bikin Bingung bikin bingung Iya frontend itu banyak banget ininya ya under dealnya ya perintilan-perintilan kecil yang

eh menghalangi kita untuk getting things done tapi sebetulnya kalau udah tahu cara kerjanya kayak gini nih kalau kita

sudah baca itu semua tadi Oh I ngertierti Tapi sebelum ke situ Kayak Eh aneh amat ini Makanya nonton ngobrolin

nonton ngobrolin web biar menambah ini ya Cakrawala pengalaman jadi apa yang sudah kita alami kalau dicat huruf P doang jawabnya

apa biar itu tujuannya itupat Iya Iya Iya Iya Oke kalau gitu e ada lagi sebelum udahan kita mau ada

yang Dias itu kalau ada yang mau usul saran kalau eh usul usul topik topik saran kritik ya mau ngundang siapa Boleh

keesana.in/ ngobrolin eh mau nanya-nanya juga boleh mau nanya-nanya juga boleh mau kalau punya ide mau bikin aplikasi

web ya jangan aplikasi Mobile boleh juga ee nanya-nanya ke kita apa aja pokoknya boleh kita menerima walaupun belum tentu

dijawab tapi bisa kita jadikan bahan referensi kalau kita gak ada Obrolan apa gitu yang mau diobrolin ya kita bisa

bisa membaca pertanyaan di sini nanti kita akan jawab ini sebagai pengganti slido ya kemarin ya kalau slido itu

kayak gak ada diskusinya Kalau ini kan kita bisa diskusi nih kayak yang ini nah ini menarik nih image to ada V ada

macam-macam ya tadi saya cobain Yangnya kita bisa sambil ee diskusi juga di sini jadi nanti pas ee topiknya

diangkat kita bisa ee mereferensikan apa yang teman-teman EE dan kita diskusikan di sini oke mungkin untuk malam hari ini

segitu dulu aja ee tuh Dita udah udah mau nodong nih ya kayaknya ya Asik emang sudah ada

tanggalnyaanggalnya i jadi Ti sudah ada Katanya tiba-tiba sudah ada ya ya biar enggak keburu diambil dibooking sama kota-kota

lain ya Oke kita udahan dulu terima kasih banyak buat atensinya e buat obrolannya dan buat diskusinya malam

hari ini kita ketemu lagi minggu depan di selasa malam jam malam sampai jumpa jaga kesehatan semuanya mudah-mudahan tahun barunya berjalan

lancar ya lancar sampai jumpa bye bye

Deskripsi asli dari YouTube

Yuk mari kita diskusi dan ngobrol ngalor-ngidul tentang dunia web. Agar tetap up-to-date dengan teknologi web terkini. Topik, tautan dan pertanyaan menarik bisa dilayangkan ke https://ksana.in/ngobrolinweb Kunjungi https://ngobrol.in untuk catatan, tautan dan informasi topik lainnya.

Episode Terkait

Bagikan:

Suka episode ini?

Episode baru setiap Selasa malam. Dengarkan lewat YouTube, Spotify, atau feed podcast favoritmu.

Pilih Cara Langganan

Memuat komentar dari GitHub Discussions...

Jika komentar tidak muncul karena ekstensi privasi / adblocker, kamu bisa berdiskusi langsung di GitHub Discussions .