繁体   English   中英

如何使用asp.net从Angular 2发送的URL中读取JSON数据

[英]how to read JSON data from url sent from Angular 2 using asp.net

我正在开发一个简单的Angular 2反应形式。 我使用ASP.NET和SQL Server作为后端来存储表单数据。 我使用angular服务从angular 2将表单数据发送到asp.net页面,在那里我无法读取那些表单数据。

这是我发送表格数据的角度代码。

import { Injectable } from '@angular/core';
import { Http, Response, Headers, RequestOptions } from '@angular/http';
import { Observable } from  'rxjs/observable';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/do';
import 'rxjs/add/operator/catch';
import { User } from './signup.interface';

@Injectable()
export class SignupService {
    headers: Headers;
    options: RequestOptions;

    private producturl = "http://172.21.41.70:8081/DB-Connect/";
    constructor(private _http: Http) {
        this.headers = new Headers({
            'Content-Type': 'application/json'
         });
          this.options = new RequestOptions({ headers: this.headers });
    }

    postDetails(user: User): Observable<User[]> {
       // console.log(user); 
        let body = JSON.stringify(user);
        console.log(body);
        return this._http.post(this.producturl, body, this.options)
            .map((response: Response) => response)
            .do(data => console.log(JSON.stringify(data)))
            .catch(this.handleError);
    }

    /*private extractData(res: Response) {
        console.log(res);
        let body = res.json();
        return body || {};
    }*/

    private handleError(error: Response) {
        console.log(error);
        return Observable.throw(error.json().error());
    }
}

这是我的asp.net代码

   Response.ContentType = "text/plain";
        using (WebClient wc = new WebClient())
        {
            var json = wc.DownloadString("http://localhost:4200");
            Response.Write(json);
        }

在执行代码时,我完全获得了角度索引页面作为输出。我没有收到我发送的任何JSON数据。

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>Demo</title>
  <base href="/">

  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="icon" type="image/x-icon" href="favicon.ico">
</head>
<body>
  <app-root></app-root>
<script type="text/javascript" src="inline.bundle.js"></script><script type="text/javascript" src="polyfills.bundle.js"></script><script type="text/javascript" src="styles.bundle.js"></script><script type="text/javascript" src="vendor.bundle.js"></script><script type="text/javascript" src="main.bundle.js"></script></body>
</html>

请帮助我在asp.net页面中读取JSON数据。 提前致谢

使用.NET作为后端的Angular 2项目可以通过安装Visual Studio 2017和.NET SDK框架来完成。

  1. 安装Visual Studio 2017。
  2. 安装.net SDK框架。
  3. 转到“文件”->“新建”->“项目”->“ ASP .NET核心Web应用程序”,然后确定。
  4. 然后选择Angular创建我们的Angular应用程序。
  5. ClientApp文件夹中的Code Angular部分。 它还包含两个演示文件供我们参考。
  6. 在Controllers文件夹中创建一个C#文件以进行后端访问。例如,我创建了一个名为ValuesController.cs的文件。
  7. 我们可以将Angular服务文件中的C#控制器文件称为“ api / Values”(请在ValuesController.cs中引用此URL)
  8. 我们可以在各个get,post函数内的ValuesController.cs文件中编写后端代码。 在该控制器文件中,我们可以获取和发布数据。

谢谢。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM