#Tutorial

121 articles

15 How to Understanding Web XSS (Cross Site Scripting) in Golang

15 How to Understanding Web XSS (Cross Site Scripting) in Golang

Introduction to XSS (Cross Site Scripting)

XSS is one of the security issues that usually occurs when creating a website. XSS usually has security holes where people can deliberately enter parameters containing script or Javascript so that the website page can be rendered. The purpose of this XSS is to steal the browser cookies of users who are accessing the website and can cause user accounts to be taken over if we as website owners don’t handle it properly.

14 How to Understanding HTML Template Cache in Golang

14 How to Understanding HTML Template Cache in Golang

Introduction to Cache Templates

In previous program codes that we have studied practically, they were not efficient. Why did it happen? because every time it is accessed it will call a function and describe the data sent into the template so the process requires high levels of execution. Every time the handler is called we will always re-parse the template. So ideally the template only performs parsing once at the beginning when the application is running, then only the template data is cached (stored in memory) so there is no need to access the data and do the parsing again so that the website we create can be faster.

13 How to Understanding HTML Template Function in Golang

13 How to Understanding HTML Template Function in Golang

Introduction to Function Templates

Apart from accessing fields in templates, we can also access functions or functions in Golang. The way to access a function is the same as accessing a field, but if the function has parameters then we can use additional parameters that are sent when calling the function in the template.

12 How to Understanding HTML Template Layout in Golang

12 How to Understanding HTML Template Layout in Golang

Introduction to Layout Templates

When we create a website page, there are several parts that are always the same on each page, for example header and footer, so if there are parts that are the same it is recommended that they be saved in a separate template so that they can be used in other templates or sometimes we call them reusable. Now, this Golang template supports importing from other templates so we can use it to make website creation easier.

11 How to Understanding HTML Template Action in Golang

11 How to Understanding HTML Template Action in Golang

Introduction to Action Templates

Not only can we render text in templates, but we can also support action commands such as if branching, for loops and so on. For example, suppose we use if branching like this

10 How to Understanding HTML Template Data in Golang

10 How to Understanding HTML Template Data in Golang

Introduction to Data Templates

If you have studied HTML Templates in the previous article, then we will continue with data templates where we can display this data dynamically by using struct or map data. However, we need to know the changes in the template text. We need to know the name of the field or key that we will use to fill in the dynamic data in the template. We can mention the name of the field or key, for example {{.FieldName}}.

09 How to Understanding HTML Template in Golang

09 How to Understanding HTML Template in Golang

Dynamic Web using Templates

In the previous post we discussed dynamic websites but using response strings contained in static files. So on this occasion we will try to get to know templating in Golang where the page, say HTML, will be dynamic and can change with the data accessed by the user.

08 How to Understanding File Server in Golang

08 How to Understanding File Server in Golang

Introduction to File Server

Golang has a feature called FileServer. With this we can create a Handler in Golang Web that we have used as a static file server and this FileServer does not need to be manually loaded again. So we can add it to http.Server or http.ServeMux.

07 How to Understanding Cookie in Golang

07 How to Understanding Cookie in Golang

Introduction to Cookies

Before discussing Cookies, we need to know that HTTP is stateless between client and server, which means the server does not store any data to remember every request from the client. This aims to make it easy to scale the server itself. So how do you get the server to remember a client? for example, when we have logged in to a website, the server must automatically know that the client has logged in so that subsequent requests no longer require logging in. For things like this, we can usually use Cookies.

06 How to Used Response Code in Golang

06 How to Used Response Code in Golang

Introduction to Response Codes

Something we also need to know about HTTP is the response code. This is a representation of the response code, where from this code we can see whether a request we sent from the client was successfully processed by the server or failed to be processed by the server. So there are lots of response codes that we can use when creating a website. You can immediately look in more depth at several HTTP Status Codes here https://developer.mozilla.org/en-US/docs/Web/HTTP/Status

05 How to Used Request Form Post in Golang

05 How to Used Request Form Post in Golang

Introduction to Post Forms

Similar to the previous post, when we use the GET method, the results of all the data in the form will be a param query, whereas if we use POST then all the data in the form is sent via the body of the HTTP Request, only the method is different. All form post data sent from the client will automatically be stored in the Request.PostFrom attribute. However, before we can retrieve the PostForm attribute data, we must first call the Request.ParseForm() method and then this method will be used to parse the body. Parsing this data will produce form data, if it is not there it will cause an error in the parsing.

04 How to Used Request Header in Golang

04 How to Used Request Header in Golang

Header Introduction

Apart from query parameters on HTTP, we can also use Headers. Headers are additional information that is usually sent from the client to the server or vice versa. In the Header, not only in the HTTP Request but in the HTTP Response we can also add header information. When we use a browser on our computer, usually headers will automatically be displayed by the browser such as browser information, types of content sent and received by the browser and much more.