Go: Working with JSON
Go: Working with JSON
I thought I knew how to handle JSON in Go.. that is until I was traveling and didn’t have the internet.
So below are my notes on handling go, and hopefully it will stick in my long term memory a little better!
So what are the main things you need to know for handling JSON in Go? Well they would be:
TL;DR:
The standard tutorials use a User. Easy enough to understand.
We create a struct that will be used as the “JSON structure”
type User struct {
Name string `json:"name"`
Email string `json:"email"`
}
Then lets pretend we have some User data
name := "George"
email := "fake@gmail.com"
so now lets first instantiate a struct of User, using the dot notation:
var person User
person.Name = name
person.Email = Email
This creates a struct that looks like:
User{
Name: "Alice",
Email: "alice@example.com"
}
Then we need to Marshal (convert to JSON bytes) the person struct!
data, err := json.Marshal(person)
if err != nil {
fmt.Println("Error:", err)
return
}
Which converts our data into JSON. Resulting in:
{"name":"George","email":"fake@gmail.com"}
To see the code all together. It is setup in the Go Playground here
Go: Working with JSON
TL;DR Using short-lived secrets to access a database is much more secure than standard credentials
I recently received my AWS Solutions Architect Associate Cert, and I inadvertently learned more about Ops and DevOps in respect to automation, deployment an...
This post will cover the following: Connecting to Splunk with the Python SDK, executing a search and receiving the results Connecting to Splunk without ...
TL;DR: Create Logstash conf.d file to allow Winlogbeat to be ingested into Logstash. Change Winlogbeat config file to use Logstash instead of Elasticsearch.
TL;DR Enable-PSRemoting Invoke-Command
I have been working on Windows and needed to connect to a Network Interface (NIC). I ran into problems, here is what I learned and hope it saves the same tro...
I have been using tcpdump recently and wanted to note down some of the commands Y’know, for future reference.
Today I was trouble shooting a machine at work. I did not have access via RDP or VNC, so I used SSH to forward my traffic to the host so I could access a URL.
I participated in a DevSecOps type workshop on Saturday (May 9th) in which we created some GitHub Actions. This is a post to solidify the learning and be a c...
This post is a cheat sheet for removing values from a Slice (technically creating a new slice).
On April 25th I was fortunate enough to participate in the Trend Micro Threat Defense workshop.
Since I blogged about my experience at OpenSoc, I wanted to expand on the value I found in my eLearnSecuirty Incident Response course. What you will find bel...
So Thursday (April 9th) I participated in an online blue team defense simulation event, known as OpenSOC.
I have been working with Golang strings and how to manipulate them. Working from other blogs posts I’ve found. When I sit down to code, I seem to forget ever...
its workings
You’ll find this post in your _posts directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different wa...
Blog from home installed jekyll on home PC, pulled GH repo. done :) (not that easy)
2nd blog post this is some wording