你好,
对于第一种情况,我使用如下代码中的场景:
var psi = new ProcessStartInfo {FileName = loginUrl, UseShellExecute = true};//打开浏览器。Process proc = Process. start (psi);if (proc != null){//等待登录逻辑使用HttpListenerContext ....//获取token逻辑使用HttpPost ....}
等待登录或获取令牌是系统相关的任务。所以我建议在这些任务中只使用c#类。
或者你可以使用ArcGIS Pro的“内置”功能来创建到门户的连接,然后使用ArcGISPortal类来获得一个令牌:ArcGISPortal类
你也可以使用EsriHttpClient类- arcgis Pro对于你的rest类型调用,你不需要担心令牌(过期等)
在2017年的DevSummit上,Esri的一位产品工程师(Tushar,他已经不在Esri工作了)做了一个样例,基本上就是你在用例1中尝试做的事情。从视频的第37分钟开始:ArcGIS Pro SDK for .NET:与ArcGIS在线集成- Esri视频:GIS,事件,ArcGIS产品…
我附上了演示源代码供您参考。请注意,该代码是针对ArcGIS Pro 1.4的,大约有5年的历史。但是,它可能会为您提供一些关于如何使用EsriHttpClient来完成任务的提示。