1+ {
2+ "id" : " gin-gonic" ,
3+ "title" : " জিন-গনিক" ,
4+ "slug" : " Gin-Web-Framework" ,
5+ "description" : " জিন হল একটি HTTP ওয়েব ফ্রেমওয়ার্ক যা Go (গোলাং) এ লেখা। এটিতে মার্টিনির মতো এপিআই বৈশিষ্ট্য রয়েছে, তবে মার্টিনির চেয়ে 40 গুণ দ্রুত কর্মক্ষমতা সহ। আপনার যদি ভাল পারফরম্যান্সের প্রয়োজন হয় তবে গিন আপনার জন্য ।" ,
6+ "colorPref" : " #3176d9" ,
7+ "contents" : [
8+ {
9+ "title" : " ইনিশিয়ালাইজেশন" ,
10+ "items" : [{
11+ "definition" : " মডিউল ইনিশিয়ালাইজেশন" ,
12+ "code" : " go mod init github.com/<username>/<projectname>"
13+ },
14+ {
15+ "definition" : " গিন ইনস্টল" ,
16+ "code" : " go get -u github.com/gin-gonic/gin"
17+ },
18+ {
19+ "definition" : " ফাইল তৈরি করা" ,
20+ "code" : " touch main.go"
21+ },
22+ {
23+ "definition" :" গিন ইম্পোর্ট করা" ,
24+ "code" :" import \" github.com/gin-gonic/gin\" "
25+ }
26+
27+ ]
28+ },
29+ {
30+ "title" : " মেইন ফাংশন" ,
31+ "items" : [{
32+ "definition" : " মেইন ফাংশন" ,
33+ "code" : " func main() {\n\t // এখানে কোড লিখুন\n }"
34+ }]
35+ },
36+ {
37+ "title" : " সার্ভার রান করা" ,
38+ "items" : [{
39+ "definition" : " 8080 পোর্টে সার্ভার রান করা" ,
40+ "code" : " router.Run()"
41+ },
42+ {
43+ "definition" : " যেকোন পোর্টে সার্ভার রান করা" ,
44+ "code" : " router.Run(\" :3000\" ) // 3000 পোর্টে সার্ভার রান করা"
45+ }
46+ ]
47+ },
48+ {
49+ "title" : " গিন রাউটার" ,
50+ "items" : [{
51+ "definition" : " গিন রাউটার ইনিশিয়ালাইজেশন" ,
52+ "code" : " router := gin.Default()"
53+ }]
54+ },
55+ {
56+ "title" : " গিন রাউটার এর মেথড" ,
57+ "items" : [{
58+ "definition" : " GET" ,
59+ "code" : " router.GET(\" /\" , func(c *gin.Context) {\n\t // এখানে কোড লিখুন\n })"
60+ },
61+ {
62+ "definition" : " POST" ,
63+ "code" : " router.POST(\" /\" , func(c *gin.Context) {\n\t // এখানে কোড লিখুন\n })"
64+ },
65+ {
66+ "definition" : " PUT" ,
67+ "code" : " router.PUT(\" /\" , func(c *gin.Context) {\n\t // এখানে কোড লিখুন\n })"
68+ },
69+ {
70+ "definition" : " DELETE" ,
71+ "code" : " router.DELETE(\" /\" , func(c *gin.Context) {\n\t // এখানে কোড লিখুন\n })"
72+ },
73+ {
74+ "definition" : " PATCH" ,
75+ "code" : " router.PATCH(\" /\" , func(c *gin.Context) {\n\t // এখানে কোড লিখুন\n })"
76+ },
77+ {
78+ "definition" : " HEAD" ,
79+ "code" : " router.HEAD(\" /\" , func(c *gin.Context) {\n\t // এখানে কোড লিখুন\n })"
80+ },
81+ {
82+ "definition" : " OPTIONS" ,
83+ "code" : " router.OPTIONS(\" /\" , func(c *gin.Context) {\n\t // এখানে কোড লিখুন\n })"
84+ },
85+ {
86+ "definition" : " Any" ,
87+ "code" : " router.Any(\" /\" , func(c *gin.Context) {\n\t // এখানে কোড লিখুন\n })"
88+ }
89+ ]
90+
91+ },
92+ {
93+ "title" : " গিন রাউটার এর প্যারামিটার" ,
94+ "items" : [{
95+ "definition" : " প্যারামিটার নেই" ,
96+ "code" : " router.GET(\" /\" , func(c *gin.Context) {\n\t // এখানে কোড লিখুন\n })"
97+ },
98+ {
99+ "definition" : " প্যারামিটার আছে" ,
100+ "code" : " router.GET(\" /:id\" , func(c *gin.Context) {\n\t // এখানে কোড লিখুন\n })"
101+ }
102+ ]
103+ },
104+ {
105+ "title" : " গিন রাউটার এর কন্টেক্সট" ,
106+ "items" : [{
107+ "definition" : " কন্টেক্সট থেকে প্যারামিটার নেওয়া" ,
108+ "code" : " c.Param(\" id\" )"
109+ },
110+ {
111+ "definition" : " জেসন তৈরি করা" ,
112+ "code" : " c.BindJSON(&user)"
113+ },
114+ {
115+ "definition" : " জেসন রিটার্ন করা" ,
116+ "code" : " c.JSON(http.StatusOK, gin.H{\n\t\" message\" : \" ok\"\n })"
117+ },
118+ {
119+ "definition" : " xml রিটার্ন করা" ,
120+ "code" : " c.XML(http.StatusOK, gin.H{\n\t\" message\" : \" ok\"\n })"
121+ },
122+ {
123+ "definition" : " yaml রিটার্ন করা" ,
124+ "code" : " c.YAML(http.StatusOK, gin.H{\n\t\" message\" : \" ok\"\n })"
125+ },
126+ {
127+ "definition" : " স্ট্রিং রিটার্ন করা" ,
128+ "code" : " c.String(http.StatusOK, \" string\" )"
129+ },
130+ {
131+ "definition" : " এইচটিএমএল রিটার্ন করা" ,
132+ "code" : " c.HTML(http.StatusOK, \" index.tmpl\" , gin.H{\n\t\" title\" : \" Main website\"\n })"
133+ },
134+ {
135+ "definition" : " redirect করা" ,
136+ "code" : " c.Redirect(http.StatusMovedPermanently, \" http://google.com\" )"
137+ },
138+ {
139+ "definition" : " Request এর মেথড " ,
140+ "code" : " c.Request"
141+ },
142+ {
143+ "definition" :" ফর্ম এর মান নেওয়া" ,
144+ "code" :" c.Request.FormValue(\" id\" )"
145+ },
146+ {
147+ "definition" : " content-type নেওয়া" ,
148+ "code" : " c.ContentType()"
149+ },
150+ {
151+ "definition" : " রিকুয়েস্ট এর হেডার নেওয়া" ,
152+ "code" : " c.Request.Header"
153+ },
154+ {
155+ "definition" : " রিকুয়েস্ট এর বডি নেওয়া" ,
156+ "code" : " c.Request.Body"
157+ },
158+ {
159+ "definition" : " রিকুয়েস্ট এর মেথড নেওয়া" ,
160+ "code" : " c.Request.Method"
161+ },
162+ {
163+ "definition" : " রিকুয়েস্ট এর URL নেওয়া" ,
164+ "code" : " c.Request.URL"
165+ },
166+ {
167+ "definition" : " রিকুয়েস্ট এর প্যাথ নেওয়া" ,
168+ "code" : " c.Request.URL.Path"
169+ },
170+ {
171+ "definition" : " রিকুয়েস্ট এর কোয়েরি স্ট্রিং নেওয়া" ,
172+ "code" : " c.Request.URL.RawQuery"
173+ },
174+ {
175+ "definition" : " রিকুয়েস্ট এর host নেওয়া" ,
176+ "code" : " c.Request.URL.Host"
177+ }
178+ ]
179+ },
180+ {
181+ "title" : " গিন রাউটার এর মিডলওয়্যার" ,
182+ "items" : [{
183+ "definition" : " লগার মিডলওয়্যার" ,
184+ "code" : " router.Use(gin.Logger())"
185+ },
186+ {
187+ "definition" : " স্ট্যাটিক ফাইল সার্ভ করার মিডলওয়্যার" ,
188+ "code" : " router.Use(gin.Static(\" /assets\" , \" ./assets\" ))"
189+ },
190+ {
191+ "definition" : " রিকভারি মিডলওয়্যার" ,
192+ "code" : " router.Use(gin.Recovery())"
193+ },
194+ {
195+ "definition" : " মিডলওয়্যার যোগ করা এবং প্যারামিটার নেওয়া" ,
196+ "code" : " router.Use(gin.RecoveryWithWriter(io.Writer))"
197+ },
198+ {
199+ "definition" : " কাস্টম মিডলওয়্যার" ,
200+ "code" : " router.Use(func(c *gin.Context) {\n\t // এখানে কোড লিখুন\n })"
201+ }
202+ ]
203+ },
204+ {
205+ "title" :" কাস্টম মিডলওয়্যার তৈরি করা" ,
206+ "items" :[{
207+ "definition" :" কাস্টম মিডলওয়্যার তৈরি করা" ,
208+ "code" :" func MyCustomMiddleware() gin.HandlerFunc {\n\t return func(c *gin.Context) {\n\t\t // এখানে কোড লিখুন\n\t }\n }"
209+ }
210+ ]
211+ },
212+ {
213+ "title" : " গিন রাউটার এর গ্রুপ" ,
214+ "items" : [{
215+ "definition" : " গ্রুপ যোগ করা" ,
216+ "code" : " router.Group(\" /users\" )"
217+ },
218+ {
219+ "definition" : " গ্রুপ এর মিডলওয়্যার যোগ করা" ,
220+ "code" : " users:= router.Group(\" /users\" , func(c *gin.Context) {\n\t // এখানে কোড লিখুন\n })"
221+ },
222+ {
223+ "definition" : " গ্রুপ এর রাউটার যোগ করা" ,
224+ "code" :" users.GET(\" /\" , func(c *gin.Context) {\n\t // এখানে কোড লিখুন\n })"
225+
226+ }
227+ ]
228+ },
229+ {
230+ "title" :" কুকি এর ব্যবহার" ,
231+ "items" :[{
232+ "definition" :" কুকি সেট করা" ,
233+ "code" :" c.SetCookie(\" cookie_name\" , \" cookie_value\" , 3600, \" /\" , \" example.com\" , false, true)"
234+ },{
235+ "definition" :" কুকি পাওয়া" ,
236+ "code" :" cookie, err := c.Cookie(\" cookie_name\" )"
237+ },{
238+ "definition" :" কুকি ডিলিট করা" ,
239+ "code" :" c.SetCookie(\" cookie_name\" , \"\" , -1, \" /\" , \" example.com\" , false, true)"
240+ }
241+ ]
242+ }
243+ ]
244+ }
0 commit comments