Initial tex samples with listing code
This commit is contained in:
80
sample.tex
Normal file
80
sample.tex
Normal file
@@ -0,0 +1,80 @@
|
||||
\documentclass[]{article}
|
||||
\usepackage[utf8]{inputenc}
|
||||
\usepackage[spanish]{babel}
|
||||
\usepackage{listings}
|
||||
\usepackage{xcolor}
|
||||
\usepackage[a4paper, total={6.5in, 8in}]{geometry}
|
||||
|
||||
\definecolor{codegreen}{rgb}{0,0.6,0}
|
||||
\definecolor{codegray}{rgb}{0.5,0.5,0.5}
|
||||
\definecolor{codepurple}{rgb}{0.58,0,0.82}
|
||||
\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
|
||||
|
||||
\lstdefinestyle{mystyle}{
|
||||
backgroundcolor=\color{backcolour},
|
||||
commentstyle=\color{codegreen},
|
||||
keywordstyle=\color{magenta},
|
||||
numberstyle=\tiny\color{codegray},
|
||||
stringstyle=\color{codepurple},
|
||||
basicstyle=\ttfamily\footnotesize,
|
||||
breakatwhitespace=false,
|
||||
breaklines=true,
|
||||
captionpos=b,
|
||||
keepspaces=true,
|
||||
numbers=left,
|
||||
numbersep=5pt,
|
||||
showspaces=false,
|
||||
showstringspaces=false,
|
||||
showtabs=false,
|
||||
tabsize=2
|
||||
}
|
||||
|
||||
\lstset{style=mystyle}
|
||||
|
||||
\newcommand{\quotes}[1]{``#1''}
|
||||
|
||||
%opening
|
||||
\title{Manejadores de rutas en HTTP}
|
||||
\author{Asistente de OpenAI}
|
||||
\date{}
|
||||
|
||||
|
||||
\begin{document}
|
||||
|
||||
\maketitle
|
||||
|
||||
Un manejador de rutas en HTTP es una función encargada de responder a una solicitud HTTP. Suele estar asociado a una ruta específica (es decir, un punto final o una ruta en el servidor) y se llama cuando se hace una solicitud a esa ruta.
|
||||
\\\\
|
||||
Por ejemplo, considere el siguiente código:
|
||||
|
||||
\begin{lstlisting}[language=Go]
|
||||
http.HandleFunc("/hola", func(w http.ResponseWriter, r *http.Request)) {
|
||||
fmt.Fprintf(w, "Hola, mundo!")
|
||||
}
|
||||
\end{lstlisting}
|
||||
|
||||
En este código, la función anónima (es decir, \texttt{func(w http.ResponseWriter, r *http.Request) \{ fmt.Fprintf(w, "¡Hola, mundo!") \} }) es un manejador que responde a las solicitudes hechas a la ruta \texttt{/hola} escribiendo la cadena \quotes{\texttt{¡Hola, mundo!}} en la respuesta.
|
||||
\\\\
|
||||
Los manejadores también pueden ser implementados como métodos de tipos que cumplan con la interfaz \texttt{http.Handler}. Por ejemplo:
|
||||
|
||||
\begin{lstlisting}[language=Go]
|
||||
func (m *messageHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
fmt.Fprintf(w, m.message)
|
||||
}
|
||||
\end{lstlisting}
|
||||
|
||||
En este caso, el método \texttt{ServeHTTP} es el manejador, y puede ser establecido como el manejador de una ruta con el siguiente código:
|
||||
|
||||
\begin{lstlisting}
|
||||
http.Handle("/mensaje", &messageHandler{mensaje: "Hola, mundo!"})
|
||||
\end{lstlisting}
|
||||
|
||||
En la firma del método \texttt{ServeHTTP}:
|
||||
|
||||
\begin{abstract}
|
||||
|
||||
\end{abstract}
|
||||
|
||||
\section{}
|
||||
|
||||
\end{document}
|
||||
Reference in New Issue
Block a user