全部学科
NodeJS全栈
nodejs
Python全栈
python
小程序首页

路由配置与RESTful风格专项测试

15 题 45 分钟 难度:

考察知识点

  • HTTP方法路由注册
  • 路由分组与嵌套
  • 动态路由参数
  • RESTful API设计规范
  • 路由中间件绑定
  • 静态文件路由
  • 路由重定向
  • 路由优先级规则
1
单选题

在Gin框架中,以下哪个方法用于配置静态文件服务目录?

A

r.StaticFile("/static", "./assets")

B

r.Static("/static", "./assets")

C

r.LoadHTMLFiles("./assets")

D

r.ServeFile("/static", "./assets")

2
判断题

在Gin框架中,配置r.Static("/assets", "./public")后,访问/assets/images/logo.png会映射到服务器的./public/images/logo.png文件。

A

B

3
单选题

以下哪种方式可以正确注册一个GET请求的路由?

A

r.HandleFunc("GET", "/users", handler)

B

r.GET("/users", handler)

C

r.Route("/users").GET(handler)

D

r.AddRoute("GET", "/users", handler)

4
判断题

gin.New()gin.Default()的区别在于,gin.Default()会自动附加Logger和Recovery中间件,而gin.New()创建的是不带任何中间件的纯净Engine实例。

A

B

5
单选题

在Gin中,路由定义为r.GET("/users/:id"),如何在handler中获取URL路径中的id参数?

A

c.Query("id")

B

c.Param("id")

C

c.Get("id")

D

c.PostForm("id")

6
单选题

在Gin路由中,以下哪个通配符可以匹配多级路径?

A

:path

B

*path

C

{path}

D

**path

7
多选题

对于请求GET /users/123/profile?tab=settings&page=1,以下哪些方法可以正确获取参数?(路由定义为r.GET("/users/:id/profile")

A

c.Param("id")获取"123"

B

c.Query("tab")获取"settings"

C

c.Query("page")获取"1"

D

c.Param("tab")获取"settings"

8
单选题

当同时定义以下路由时,请求GET /users/me会匹配哪个路由?

Go
r.GET("/users/:id", handlerA)
r.GET("/users/me", handlerB)
r.GET("/users/*action", handlerC)
A

handlerA(动态路由优先)

B

handlerB(静态路由优先)

C

handlerC(通配符路由优先)

D

报错,路由冲突

9
单选题

在Gin中,以下哪种方式可以实现HTTP重定向?

A

c.Redirect(301, "/new-path")

B

c.Location("/new-path")

C

c.Move("/new-path")

D

c.RedirectTo("/new-path")

10
多选题

对于以下路由配置,请求GET /files/docs/readme.md会匹配哪些路由?(假设所有路由都能单独匹配)

Go
r.GET("/files/*filepath", handlerA)
r.GET("/files/:name", handlerB)
r.GET("/files/readme.md", handlerC)
A

最终匹配handlerA(通配符匹配多级)

B

最终匹配handlerB(动态参数匹配)

C

最终匹配handlerC(静态路由匹配)

D

如果只有handlerA,可以匹配

11
单选题

以下哪个路由设计符合RESTful风格规范?

A

r.GET("/getUserById/:id")

B

r.GET("/users/:id")

C

r.GET("/api/v1/queryUser")

D

r.GET("/user-info/:id")

12
多选题

以下哪些HTTP方法与操作的对应关系符合RESTful规范?

A

GET用于获取资源,不应修改数据

B

POST用于创建新资源

C

PUT用于部分更新资源

D

DELETE用于删除资源

13
判断题

在RESTful API设计中,将版本号放在URL路径中(如/v1/users)是一种推荐的版本管理方式。

A

B

14
填空题

在Gin框架中,设计RESTful风格的用户订单API,路由定义为r.GET("/users/:userId/orders/:orderId"),请求GET /users/123/orders/456时,使用________________________获取用户ID,使用________________________获取订单ID。

15
判断题

在Gin框架中,同时注册r.GET("/users/:id")r.GET("/users/:name")会导致路由冲突错误,因为两个动态参数路由在同一路径位置冲突。

A

B

← 上一个试卷 请求参数绑定与校验专项测试
下一个试卷 → 部署与配置管理专项测试

📝 发现内容有误?点击此处直接编辑

想参加完整模拟考试?
小程序提供计时考试、自动评分和详细解析

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库