如何在Angular 4中提供用户名和密码以使用具有oAuth安全性的rest控制器?
Posted
技术标签:
【中文标题】如何在Angular 4中提供用户名和密码以使用具有oAuth安全性的rest控制器?【英文标题】:How can provide username and password for consuming rest controller with oAuth security in Angular 4? 【发布时间】:2017-10-28 03:57:09 【问题描述】:我创建了在 Spring Boot 中返回人员列表的休息控制器方法,并提供了 oAuth 服务来保护我的休息方法,这是 angular 2 中用于使用此休息服务的服务。
import Observable from 'rxjs';
import Http,Response from '@angular/http';
import 'rxjs/add/operator/map';
@Injectable()
export class XService
constructor(private http:Http)
getAll(): Observable<any>
return this.http.get('http://localhost:8087/rest2/persons').map((response:Response)=>response.json());
如何提供用户名和密码以通过 Web 服务进行身份验证。
@RequestMapping(path = "/rest2/", produces = "application/json")
@CrossOrigin
public class SubscriberController
@RequestMapping(method = RequestMethod.GET, path="/persons",produces="application/json")
public List<Person> getPersons()
List<Person> p=new ArrayList<>();
p.add(new Person(1,"dsd","dsdsd"));
p.add(new Person(2,"dsd","dsdsd"));
p.add(new Person(4,"dsd","dsdsd"));
p.add(new Person(14,"dsd","dsdsd"));
p.add(new Person(3,"dsd","dsdsd"));
return p;
【问题讨论】:
【参考方案1】:如果你的angular项目和spring-boot项目在同一个项目,可以直接问'http://localhost:8087/rest2/persons'
。
否则你应该为你的 api 设置代理。
在根目录下创建一个配置 json(xxx.config.json) 文件
"/your api":
"target": "http://localhost:8087",
"secure": "false"
并修改ng serve
ng serve --proxy xxx.config.json
那么当您询问/your api
时,您将获得来自"http://localhost:8087"
的数据
希望能帮到你
【讨论】:
如果他们在不同的项目中,请你给我更多的细节 我的答案是 angular-cli(我没用过其他的)。你可以搜索'angular2 api proxy'。以上是关于如何在Angular 4中提供用户名和密码以使用具有oAuth安全性的rest控制器?的主要内容,如果未能解决你的问题,请参考以下文章