I use angular to get information register html and I post to path api it work but print word "work" and I cant not get value In body and I test path post use postman it show firstname.......................................................................................................................................
server.go
package main
import (
"github.com/gorilla/handlers"
"github.com/gorilla/mux"
"net/http"
)
func main() {
router := mux.NewRouter()
router.HandleFunc("/register", Createuser).Methods("POST")
headers := handlers.AllowedHeaders([]string{"X-Requested-With", "Content-Type", "Authorization"})
methods := handlers.AllowedMethods([]string{"GET", "POST", "PUT", "DELETE"})
origins := handlers.AllowedOrigins([]string{"*"})
http.ListenAndServe(":12345", handlers.CORS(headers, methods, origins)(router))
}
func Createuser(writer http.ResponseWriter, request *http.Request) {
request.ParseForm()
print(request.FormValue("firstName"))
print("work")
}
register.component.ts
import { Component, OnInit } from '@angular/core';
import { Router } from '@angular/router';
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
import { first } from 'rxjs/operators';
import { AlertService, UserService } from '../_services';
@Component({templateUrl: 'register.component.html'})
export class RegisterComponent implements OnInit {
registerForm: FormGroup;
loading = false;
submitted = false;
constructor(
private formBuilder: FormBuilder,
private router: Router,
private userService: UserService,
private alertService: AlertService) { }
ngOnInit() {
this.registerForm = this.formBuilder.group({
firstName: ['', Validators.required],
lastName: ['', Validators.required],
username: ['', Validators.required],
password: ['', [Validators.required, Validators.minLength(6)]]
});
}
// convenience getter for easy access to form fields
get f() { return this.registerForm.controls; }
onSubmit() {
this.submitted = true;
// stop here if form is invalid
if (this.registerForm.invalid) {
return;
}
this.loading = true;
this.userService.register(this.registerForm.value)
}
}
user.service.ts
import {Injectable} from '@angular/core';
import {HttpClient} from '@angular/common/http';
import {environment} from '../../environments/environment';
import {User} from '../_models';
@Injectable()
export class UserService {
constructor(private http: HttpClient) {
}
register(user: User) {
return this.http.post(`${environment.apiUrl}/register`, {
firstName: user.firstName,
lastName : user.lastName,
username : user.username,
password : user.password
})
}
}
}
</div>