Bermula dengan Go and the Web: Deploy to Railway
Panduan ini bertujuan untuk menunjukkan kepada anda cara membina apl web menggunakan Go. Anda akan membuat dan menguji pelayan web ringkas yang dibina menggunakan Go pada mesin tempatan anda kemudian gunakan apl web anda ke Railway.
Kereta api ialah perkhidmatan pengehosan yang boleh anda gunakan untuk menggunakan apl anda. Ia menyokong semua jenis konfigurasi penggunaan dan mempunyai banyak ciri untuk menyesuaikan pengehosan yang disediakan untuk apl anda.
Sebelum Kita Mula
Untuk mengikuti panduan, anda mesti memasang Go pada mesin anda. Muat turun dan pasang Go here: Muat turun dan Pasang Go.
Git dan GitHub CLI harus dipasang pada mesin anda. Muat turun dan pasang Git dari sini: Muat Turun - Git. Muat turun dan pasang GitHub CLI dari sini: Muat turun dan Pasang GitHub CLI.
Akaun GitHub dan akaun Kereta Api diperlukan. Daftar untuk GitHub di sini: Cipta akaun GitHub. Dan daftar untuk Kereta Api di sini: Buat akaun Kereta Api
Anda mesti mempunyai kebiasaan dengan HTML, CSS, JavaScript, HTTP untuk mengikuti konsep yang dibincangkan dalam panduan.
Akhir sekali, pengetahuan tentang Go berguna tetapi tidak wajib. Ini adalah panduan pemula.
Hello, Dunia! Pergi
Buka direktori kerja anda dan buat fail baharu dan namakannya main.go.
Tambahkan kod berikut pada main.go:
package main import "fmt" func main() { fmt.Println("Hello, World!") }
Simpan fail dan uji dengan menjalankan arahan berikut dalam terminal anda dalam direktori kerja anda:
go run main.go
Anda harus menulis teks "Hello, World!" dalam output terminal anda.
Hello, Dunia! Pergi ke Web
Kami baru sahaja mencipta apl CLI mudah menggunakan Go. Seterusnya, mari buat pelayan web mudah menggunakan Go. Komen kod yang baru anda tulis dalam langkah sebelumnya. Di atas blok ulasan, tambahkan kod berikut:
package main import "fmt" import "net/http" func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { fmt.Fprintf(w, "<h1>Hello, World!</h1>") }) http.ListenAndServe(":80", nil) }
Simpan fail dan jalankannya. Lawati localhost dalam penyemak imbas anda dan anda akan melihat teks "Hello, World!" pada halaman web.
Buat dan Muat Naik Repo GitHub
Mulakan direktori projek anda sebagai repo Git.
git init
Serahkan fail projek anda. Dalam kes ini, ia hanyalah fail main.go.
git add main.go
git commit -m "Initial commit"
Sahkan dengan GitHub
gh auth login
Muat naik repo anda ke GitHub
gh repo create my-repo --public --source=. --remote=origin
git push --set-upstream origin master
Ganti my-repo dengan nama repo yang anda inginkan.
Sebarkan ke Kereta Api
Kereta api menawarkan banyak cara untuk menggunakan apl web anda. Anda boleh menggunakan papan pemuka, CLI, API dsb. Artikel ini: Pilihan Penggunaan Kereta Api menerangkan semua pelbagai cara anda boleh menggunakan apl pada platform Keretapi.
Kami akan menggunakan papan pemuka sebagai permulaan.
Buat projek Keretapi baharu
Lawati dev.new dalam penyemak imbas anda. Ini akan mengubah hala anda ke railway.com/new dan anda akan melihat modal Projek Baharu dengan pilihan penempatan.
Pilih Deploy from GitHub repo dan pilih repo yang anda buat sebelum ini.
Platform Kereta Api akan membaca kandungan repo anda, memulakan projek, membina dan kemudian menggunakan secara automatik sebagai perkhidmatan.
Hasilkan Domain untuk projek anda
Pilih Tetapan dalam perkhidmatan projek Keretapi anda. Di bawah Rangkaian klik Jana Domain. Ini membolehkan anda mengakses perkhidmatan anda di internet.
Kereta api akan menjana nama domain untuk apl anda. URL akan muncul beberapa saat selepas mengklik Jana Domain. Anda akan menggunakan URL ini untuk mengakses apl web Go anda di internet.
Uji nama domain anda yang baru dijana dalam penyemak imbas anda. Anda sepatutnya melihat teks "Hello, World!" apabila anda melawati pautan.
Layankan fail Statik menggunakan Go
Dalam folder projek setempat anda, buat folder baharu, statik. Cipta fail baharu bernama index.html di dalam statik dan tambah kod berikut:
package main import "fmt" func main() { fmt.Println("Hello, World!") }
Kemas kini fail main.go untuk menyampaikan fail statik daripada folder statik. Komen semua kod yang telah anda tulis. Di atas blok ulasan, tambahkan kod berikut pada main.go:
go run main.go
Uji kod anda:
package main import "fmt" import "net/http" func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { fmt.Fprintf(w, "<h1>Hello, World!</h1>") }) http.ListenAndServe(":80", nil) }
Lawati localhost dalam penyemak imbas anda dan anda akan melihat halaman web dengan teks: "Tapak Web Statik Saya"
Kemas kini Penggunaan Keretapi
Untuk mengemas kini penggunaan anda, hanya peringkat dan lakukan perubahan fail yang telah anda buat menggunakan Git.
git init
git add main.go
Kemudian tolak kemas kini ke GitHub.
package main import "fmt" func main() { fmt.Println("Hello, World!") }
Kereta api akan mengemas kini projek anda secara automatik sejurus selepas menolak perubahan anda ke GitHub. Tunggu beberapa saat dan lawati URL apl anda untuk menguji perubahan anda
Kesimpulan
Tahniah! Anda telah berjaya membina apl web mudah menggunakan Go dan mengaturkannya ke Railway. Anda mempelajari cara membuat pelayan web asas, menyediakan fail statik dan menggunakan GitHub untuk kawalan versi dan penggunaan. Railway memudahkan untuk menggunakan dan mengurus aplikasi anda dengan platform mesra pengguna dan ciri berkuasanya. Teruskan bereksperimen dengan Go dan Railway untuk membina aplikasi web yang lebih kompleks dan berskala. Selamat mengekod!
Rujukan
- Repo Projek GitHub
- Muat turun dan Pasang Go
- Muat Turun - Git
- Muat turun dan Pasang GitHub CLI
- Buat akaun GitHub
- Buat akaun Kereta Api
- Pilihan Penggunaan Kereta Api
Atas ialah kandungan terperinci Bermula dengan Go and the Web: Deploy to Railway. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Untuk membuat saluran penampan di Go, hanya tentukan parameter kapasiti dalam fungsi membuat. Saluran Buffer membolehkan operasi penghantaran untuk menyimpan data sementara apabila tiada penerima, selagi kapasiti yang ditentukan tidak melebihi. Sebagai contoh, Ch: = Make (Chanint, 10) mencipta saluran penampan yang boleh menyimpan sehingga 10 nilai integer; Tidak seperti saluran yang tidak dibuang, data tidak akan disekat dengan segera apabila menghantar, tetapi data akan disimpan sementara dalam penampan sehingga ia diambil oleh penerima; Apabila menggunakannya, sila ambil perhatian: 1. Tetapan kapasiti harus munasabah untuk mengelakkan sisa memori atau penyekatan kerap; 2. Penimbal perlu mencegah masalah ingatan daripada terkumpul selama -lamanya dalam penampan; 3. Isyarat boleh diluluskan oleh jenis Chanstruct {} untuk menjimatkan sumber; Senario biasa termasuk mengawal bilangan konkurensi, model pengguna dan pembezaan

Dalam bahasa Go, memanggil kaedah struktur memerlukan terlebih dahulu menentukan struktur dan kaedah yang mengikat penerima, dan mengaksesnya menggunakan nombor titik. Selepas menentukan segi empat tepat struktur, kaedah boleh diisytiharkan melalui penerima nilai atau penerima penunjuk; 1. Gunakan penerima nilai seperti kawasan func (rrectangle) int dan terus memanggilnya melalui rect.area (); 2. Jika anda perlu mengubah suai struktur, gunakan penerima penunjuk seperti func (R*segi empat) setWidth (...), dan GO akan secara automatik mengendalikan penukaran penunjuk dan nilai; 3. Apabila membenamkan struktur, kaedah struktur tertanam akan diperbaiki, dan ia boleh dipanggil secara langsung melalui struktur luar; 4. Pergi tidak perlu memaksa menggunakan getter/setter,

Di GO, antara muka adalah jenis yang mentakrifkan tingkah laku tanpa menentukan pelaksanaan. Antara muka terdiri daripada tandatangan kaedah, dan mana -mana jenis yang melaksanakan kaedah ini secara automatik memenuhi antara muka. Sebagai contoh, jika anda menentukan antara muka penceramah yang mengandungi kaedah bercakap (), semua jenis yang melaksanakan kaedah boleh dipertimbangkan pembesar suara. Antara muka sesuai untuk menulis fungsi umum, butiran pelaksanaan abstrak, dan menggunakan objek mengejek dalam ujian. Menentukan antara muka menggunakan kata kunci antara muka dan menyenaraikan tandatangan kaedah, tanpa secara jelas mengisytiharkan jenis untuk melaksanakan antara muka. Kes penggunaan biasa termasuk log, pemformatan, abstraksi pangkalan data atau perkhidmatan yang berbeza, dan sistem pemberitahuan. Sebagai contoh, kedua -dua jenis anjing dan robot boleh melaksanakan kaedah bercakap dan menyampaikannya kepada anno yang sama

TointegrategoLanggerviceswithexistingpythoninfrastructure, userestapisorgrpcforinter-serviceCommunication, membolehkangoandpythonappstointeractseamlythroughtroughtroughtroughtroughtroughtrotocols.1.usereSestaS (ViaframeworksLikeGineGinpyton)

Dalam bahasa Go, operasi rentetan terutamanya dilaksanakan melalui pakej rentetan dan fungsi terbina dalam. 1.Strings.Contains () digunakan untuk menentukan sama ada rentetan mengandungi substring dan mengembalikan nilai boolean; 2.Strings.index () boleh mencari lokasi di mana substring muncul untuk kali pertama, dan jika ia tidak wujud, ia kembali -1; 3.Strings.ReplaceAll () boleh menggantikan semua substrings yang sepadan, dan juga boleh mengawal bilangan pengganti melalui string.replace (); 4. Len () Fungsi digunakan untuk mendapatkan panjang bait rentetan, tetapi apabila memproses Unicode, anda perlu memberi perhatian kepada perbezaan antara aksara dan bait. Fungsi ini sering digunakan dalam senario seperti penapisan data, parsing teks, dan pemprosesan rentetan.

TheGoioPackageProvidesInderFacesLikeReaderAndWritertohandlei/ooperatiationUniformlyAsssources.1.io.Reader'sReadmethodenablesreadingingfromvarioussourcessuchasfilesorhtpresponses.2.WriterSwriteShacileShacileShacileShacileShacileShacileShacileShacileShacileShacileShacileShacileShacileShacileShacileShacileShacileShacileShacileShacileShacileShacileS.

Pakej Masa Go menyediakan fungsi untuk masa dan tempoh pemprosesan, termasuk mendapatkan masa semasa, tarikh pemformatan, mengira perbezaan masa, zon waktu pemprosesan, penjadualan dan operasi tidur. Untuk mendapatkan masa semasa, gunakan time.now () untuk mendapatkan struktur masa, dan anda boleh mengekstrak maklumat masa tertentu melalui tahun (), bulan (), hari () dan kaedah lain; Gunakan format ("2006-01-0215: 04: 05") untuk memformat rentetan masa; Apabila mengira perbezaan masa, gunakan sub () atau sejak () untuk mendapatkan objek tempoh, dan kemudian tukarnya ke dalam unit yang sepadan melalui saat (), minit (), dan jam ();

Ingo, ifStatementSexeCuteCodeBasedOnconditions.1.BasicSTructureRaBlockifaconditionistrue, mis., Ifx> 10 {...}. 2.elseclaushan dlesfalseconditions, mis., else {...}. 3.elseifchainsmultipleConditions, mis., elseifx == 10 {...}. 4.VariableinitializationInsideif, l
