Created
January 2, 2020 00:26
-
-
Save pakoy3k/76fac83ad2e7ab5b401b729e0ff8fd9b to your computer and use it in GitHub Desktop.
API basica en Go lang con conexion a mySQL
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package main | |
import ( | |
"database/sql" | |
"encoding/json" | |
"fmt" | |
"log" | |
"net/http" | |
_ "github.com/go-sql-driver/mysql" | |
"github.com/gorilla/mux" | |
) | |
var db *sql.DB | |
func homeLink(w http.ResponseWriter, r *http.Request) { | |
fmt.Fprintf(w, "<h1>API welcome!</h1>") | |
} | |
func sqlTest(w http.ResponseWriter, r *http.Request) { | |
var err error | |
db, err = sql.Open("mysql", "root:@/inventory_db?charset=utf8") | |
if err != nil { | |
panic(err) | |
} | |
rows, err := db.Query("SELECT id,username FROM stock_user") | |
if err != nil { | |
panic(err) | |
} | |
defer rows.Close() | |
for rows.Next() { | |
var dataDB int | |
var textDB string | |
rows.Scan(&dataDB, &textDB) | |
fmt.Println(dataDB) | |
fmt.Println(textDB) | |
slcD := []string{"apple", "peach", "pear"} | |
slcB, _ := json.Marshal(slcD) | |
fmt.Fprintf(w, textDB) | |
fmt.Fprintf(w, string(slcB)) | |
} | |
} | |
func main() { | |
router := mux.NewRouter().StrictSlash(true) | |
router.HandleFunc("/", homeLink) | |
router.HandleFunc("/sqltest", sqlTest) | |
log.Fatal(http.ListenAndServe(":8081", router)) | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment