Arcgis Ga rest请求提交任务(submitjob)
arcgis server 被portal托管。
portal提供两种认证方式 传统的generateToken和Oauth2。
当我们使用rest方式启动ga大数据分析工具的时候,是需要登录认证的。测试过程中发现Oauth2方式未提供直接获取server token的接口(求指教),不过可以解决(两步:1.通过rest请求submitjob接口返回 登录页,解析oauth_state的值,2.发送loginin请求 解析返回的header,从cookie中获得token )。
主要说一下基于generateToken.主要理解下面两个登录。如下图
具体的理解就是 如果我们要登录server 可以使用用户名密码 ,也可以使用登录portal的token,如果使用portal的token需要在portal获取token时把webapp url 指向server的admin。于是就好做了。。。
在我们获取portal登录的token值以后,可以带着token获取权限内的内容。当我们使用java resttemplate启动job时在请求头中添加Cookie ,值设置为
agstoken=XXXXX。 XXXXX 为我们登录portal接口获取的token。便可以直接通过rest启动job.后续获取job执行状态也要带有cookie的请求头哟。