JavaRush
AI Academy
new
Promotion
Learning
Courses
Tasks
Quizzes
Games
Help
Schedule of nudges
Internship
Community
Users
Forum
Chat
Articles
Activities
Reviews
Subscriptions
Light theme

Lectures

  • Reviews
  • About us
  • CS50
Start
Start learning
Start learning
  • My progress
  • Courses
  • Quest map
  • Lectures
  • net/url — parsing and building URLs without “string concatenation”

    Go SELF
    57 level,0 lecture
    We’ll break down the net/url package in Go: how to parse addresses with url.Parse, how the url.URL struct is organized (fields Scheme/ Host/ Path/ RawQuery/ Fragment), how absolute and relative URLs differ, why strings.Split is a bad idea because of percent-encoding, and how to build a URL back with u.String() without manually using +.
    Open
  • Query params — filters, sorting, pagination

    Go SELF
    57 level,1 lecture
    We break down how to turn a query string into part of the API contract: why parameters like /api/v1/tasks?done=true&limit=20 control how the list is returned rather than identify a resource; how to design a stable parameter dictionary ( done, q, tag, sort, order, limit, offset); why a *bool is useful for an optional flag; and how to lock down defaults and constraints to avoid implicit sorting and overload.
    Open
  • Reading query on the server — r.URL.Query()

    Go SELF
    57 level,2 lecture
    We break down where the request URL lives in net/http, why r.URL is already a *url.URL, and how to correctly read query parameters via r.URL.Query(), getting url.Values. In practice, we will compare q.Get(...) and reading lists via q["tag"], and we will also cover subtle cases like “key is missing” vs “value is empty”.
    Open
  • Query params validation and defaults

    Go SELF
    57 level,3 lecture
    We go through how to neatly parse and validate HTTP request query parameters in Go: where to set defaults, how to distinguish “parameter is missing” from “provided but empty”, how to constrain limit/ offset with ranges, how to make an “optional bool” for done, and why sort/ order need a whitelist. In the end, we assemble everything into a typed struct and return clear 400-level errors.
    Open
  • Repeated parameters and escaping — url.Values

    Go SELF
    57 level,4 lecture
    We’ll break down why repeated query parameters are a perfectly normal standard, how the url.Values type is structured in Go (key → list of values), how Set and Add differ, how to read single and repeated parameters via Get and vals["tag"], and why you should trust correct escaping to Encode(). Finally — details of the net/url API and common mistakes that lead to “silent” bugs in filters.
    Open
Learn
  • Registration
  • Java course
  • Help with tasks
  • Pricing
  • Game projects
Community
  • Users
  • Articles
  • Forum
  • Chat
  • Activities
Company
  • About us
  • Contacts
  • Reviews
  • FAQ
  • Support
JavaRushJavaRush — is an interactive online course for learning Java programming from scratch. It contains 1200 practical tasks with one-click solution checking, the necessary minimum of theory on Java basics, and motivating features that help you complete the course: games, quizzes, interesting projects and articles on effective learning and the career of a Java developer.
Follow us
Язык интерфейса
Русский
English
Українська
"Programmers are not born" © 2026 JavaRush
MastercardVisa
"Programmers are not born" © 2026 JavaRush