为什么当我使用 HTTP Post REST API 时,我的 Angular2 URL 中会得到一个"?"



你好,我是Angular的新手,我正在尝试向我的后端(Symfony2.8(发送主题,电子邮件和消息。 当我路由本地主机:4200/联系人时,我没有收到错误,没有执行,什么也没发生,URL 变成了本地主机:4200/联系人? 这是我的组件,服务和HTML文件 (顺便说一句,我使用此方法添加和反对数据库,它工作正常(

export class ContactComponent  {
contactForm: any;
  constructor(private formBuilder: FormBuilder, public router: Router ,private cService: ContactService) { 
  	
  	this.contactForm = this.formBuilder.group({
      'subject': ['', Validators.required],
      'email' : ['', Validators.required],
      'msg': ['', Validators.required],
    });
  }
sendMessage() 
	{
    	// console.log(this.contactForm.value.subject,this.contactForm.value.email,this.contactForm.value.msg);
  		this.cService.sendMsg(this.contactForm.value.subject,this.contactForm.value.email,
  								 this.contactForm.value.msg)
                   		.subscribe(
                       response => {
                       	
                         alert("Thanks for contacting us");
                       },
                       error => {
                        alert(error);
                       }
                     );

export class ContactService {
  
  url:string = '/web/contactus';
  constructor (private http: Http) {
  }
  sendMsg(subject: string,email: string, msg: string): Observable<any> {
    
let body = JSON.stringify({
      subject,
     email,
      msg
    } || null);
    let headers = new Headers({ 'Content-Type': 'application/json' });
    let options = new RequestOptions({ headers: headers });
 console.log(body);
    return this.http.post(this.url, body, options)
                    .map(res => res.json().data)
                    .do(data => console.log(JSON.parse(JSON.stringify(data || null ))))
                    .catch(this.handleError);
  }
private extractData(res: Response) {
    let body = res.json();
    return body || { };
  }
  

<form [formGroup]="contactForm" (submit)="sendMessage()">
                   <div class="form-group">
                        <label >Subject</label>
                        <input class="form-control" formControlName="subject"  placeholder="Subject"/>
                        <span *ngIf="!contactForm.controls.subject.valid">required</span>
                       
                    </div><!-- /.form-group -->
                    <div class="form-group">
                        <label>E-mail</label>
                        <input class="form-control" formControlName="email"  placeholder="Email"/>
                        <span *ngIf="!contactForm.controls.email.valid">required</span>
                    </div><!-- /.form-group -->
                <div class="form-group">
                    <label >Message</label>
                    <textarea class="form-control" formControlName="msg"  rows="6"></textarea>
                    <span *ngIf="!contactForm.controls.msg.valid">required</span>
                </div><!-- /.form-group -->
                <button class="btn btn-primary pull-right" type="submit" [disabled]="!contactForm.valid">Post Message</button>
            </form>

看起来它正在抛出一些异常。在控制台中,单击保留日志,然后尝试相同的操作。您可能会看到一些异常

最新更新