`

用Golang的 http 包建立 Web 服务器

 
阅读更多

http 包建立 Web 服务器

package main

import (
	"fmt"
	"log"
	"net/http"
	"strings"
)

func sayhelloName(w http.ResponseWriter, r *http.Request) {
	r.ParseForm()       //解析参数, 默认是不会解析的
	fmt.Println(r.Form) //这些是服务器端的打印信息
	fmt.Println("path", r.URL.Path)
	fmt.Println("scheme", r.URL.Scheme)
	fmt.Println(r.Form["url_long"])
	for k, v := range r.Form {
		fmt.Println("key:", k)
		fmt.Println("val:", strings.Join(v, ""))
	}
	fmt.Fprintf(w, "Hello astaxie!") //输出到客户端的信息
}

func main() {
	http.HandleFunc("/", sayhelloName)       //设置访问的路由
	err := http.ListenAndServe(":9090", nil) //设置监听的端口
	if err != nil {
		log.Fatal("ListenAndServe: ", err)
	}
}

 

在浏览器中先后输入

http://localhost:9090

http://localhost:9090/?url_long=111&url_long=222

输出到浏览器的内容是: Hello astaxie!

 

 

 

服务器端的控制台的输出:

G:\Users\chenjo>go run web.go

map[]

path /

scheme

[]

map[]

path /favicon.ico

scheme

[]

map[url_long:[111 222]]

path /

scheme

[111 222]

key: url_long

val: 111222

map[]

path /favicon.ico

scheme

[]

分享到:
评论

相关推荐

    golang tcp http搭建与通信

    在本文中,我们将深入探讨如何使用Golang搭建TCP和HTTP服务器以及实现它们之间的通信。Golang,也称为Go语言,是Google开发的一种静态类型的、编译型的、并发型的、垃圾回收的、C风格的编程语言。它以其简洁的语法、...

    golang web编程英文版

    Go语言的并发模型使得处理大量并发连接变得更加简单,这是Go语言在Web服务器开发中的一个显著优势。 最后,书籍可能会涉及部署和运维,包括持续集成、自动化测试、性能监控和故障排查等实践技巧。这部分内容可以...

    golang 学习资料大礼包

    3. **Go Web 编程**:这部分内容聚焦于Go语言在Web开发中的应用,涵盖了HTTP服务器的搭建、路由设计、中间件的使用、模板引擎以及数据库交互等关键知识点。通过学习,开发者能够构建高效且可扩展的Web服务。 4. **...

    golang电子书介绍了如何用golang建立一个网络.zip

    2. `http`包:用于HTTP协议的处理,包括创建服务器、客户端请求、中间件等功能。`http.Server`和`http.Handler`是核心结构,可以自定义处理函数来响应HTTP请求。 三、构建Web应用程序 电子书可能涵盖了以下内容: ...

    Golang 搭建 Web 聊天室

    【Golang 搭建 Web 聊天室】是一个关于使用 Go 语言构建实时通信应用的教程,重点是利用 WebSocket 协议实现一个在线聊天室。WebSocket 是一种在 Web 端支持双向通信的协议,它克服了 HTTP 的单向传输限制,允许...

    Go语言实现的一个简单Web服务器

    http包建立Web服务器 代码如下: package main import (  “fmt”  “net/http”  “strings”  “log” ) func sayhelloName(w http.ResponseWriter, r *http.Request) {  r.ParseForm() //解析参数,默

    学习golang

    Go的标准库net/http提供了构建Web服务器和客户端的基本工具。通过使用路由库,如gorilla/mux,你可以创建复杂的URL路由结构。Go还支持模板库,如html/template,用于动态生成HTML页面。此外,Go的并发模型使得在Web...

    golang 版 linux windows httpstat http url api 性能分析工具

    标题和描述中提到的是一个基于Golang开发的跨平台HTTP性能分析工具,名为`httpstat`。这个工具主要用于Linux和Windows操作系统,它可以帮助开发者和系统管理员深入理解HTTP请求的性能,包括URL API的响应时间、网络...

    Golang语言基于beego框架的websocket即时聊天

    beego是一个强大的Go Web开发框架,它提供了一种简洁的方式来快速搭建Web应用,而Websocket则是一种在客户端和服务器之间进行全双工通信的协议,非常适合实时聊天系统。 首先,我们需要了解Golang的基础知识。Go...

    7天练手golang项目

    在Web开发方面,Go语言提供了标准库"net/http",这是构建Web服务器和客户端的基本工具。在这个7天的项目中,你将学习如何使用http包创建一个简单的HTTP服务器,处理HTTP请求和响应。这包括定义路由、编写处理器函数...

    第十七节 http服务器建立1

    HTTP(超文本传输协议)是互联网上应用最为广泛的一种网络协议,用于从Web服务器传输超文本来到客户端,通常指的就是我们所说的网页。 Golang 是一种现代化的编程语言,特别适合于构建高性能的网络服务器。它内置了...

    websocket_websocket_golang_

    WebSocket是Web应用中实现双向通信的关键技术,它允许服务器与客户端进行实时数据交换。在Golang中,Go标准库提供了一个强大的WebSocket实现,使得开发者能够方便地构建WebSocket服务。本项目是基于Golang实现的一个...

    Go-PHP绑定至Go编程语言(Golang)

    2. **PHP的优势**:PHP是Web开发的首选语言之一,因为它的学习曲线较平缓,有大量的框架和库支持,且与Web服务器集成紧密,适合快速开发Web应用。 3. **Go-PHP绑定的工作原理**:go-php项目可能通过生成CGO(C语言...

    Go-go-API-manage一个API管理工具golang开发基于beego页面基于layUi

    Beego是一个快速、轻量级的Web应用框架,它为Golang提供了MVC(Model-View-Controller)结构,使得开发者可以更高效地进行Web应用的开发。在Go-go-API-manage中,Beego作为后端框架,负责处理HTTP请求,路由管理,...

    golang 入门级 保姆教程

    学习完基础知识后,尝试参与或创建自己的小项目,如Web服务器、网络爬虫、命令行工具等,实践是最好的老师。 通过这份Golang入门级保姆教程,你将逐步建立起对Go语言的理解,并具备编写简单Go程序的能力。不断练习...

    Golang(Gin框架)+websocket 实现的多人聊天室+代码+详细文档

    Gin是一个高效的、基于MVC结构的Web开发框架,它简化了Go语言中的HTTP服务器设置。而Websocket则是一种在客户端和服务器之间建立持久连接的技术,适合实时通信应用,如在线聊天。 首先,让我们从Gin框架开始。Gin...

    Go-RoadRunner是Golang的高性能PHP负载平衡器和进程管理器库

    6. **持久连接**:Go-RoadRunner支持HTTP/2协议,允许客户端与服务器建立持久连接,减少了TCP握手和挥手的开销,进一步提升了性能。 7. **热更新和零停机部署**:Go-RoadRunner支持在不中断服务的情况下更新PHP代码...

    Go语言数据库操作:databasesql包的高效应用

    - **服务器端编程**:Go语言非常适合构建高性能的Web服务器和API后端。 - **分布式系统**:Go的并发特性非常适合开发分布式系统,如微服务架构。 - **云服务**:许多云服务提供商选择Go作为内部服务的首选语言。 - *...

Global site tag (gtag.js) - Google Analytics