Ich verwende den .NET proxy<\/A> für die App-Anmeldung in einer Webanwendung. Die proxy.config funktioniert, wenn ich einzelne URLs angebe. Zum Beispiel:<\/P><serverUrl url="https:\/\/<\/A>myserver<\/EM>\/arcgis\/rest\/services\/myname<\/EM>\/MapServer<\/STRONG>"<\/SPAN><\/P> clientId="aaa"<\/SPAN><\/P> clientSecret="bbb"<\/SPAN><\/P> oauth2Endpoint="<\/SPAN>https:\/\/<\/A>myserver<\/EM>\/portal\/sharing\/rest\/oauth2"<\/SPAN><\/P> matchAll="true"\/><\/SPAN><\/P><\/P>Ich möchte den proxy für mehrere Dienste auf unserem Server verwenden, aber etwas wie das Folgende führt dazu, dass ungültige Tokens generiert werden:<\/SPAN><\/P><serverUrl url="https:\/\/<\/A>myserver<\/EM>\/arcgis\/rest\/services\/<\/STRONG>"<\/SPAN><\/P> clientId="aaa"<\/SPAN><\/P> clientSecret="bbb"<\/SPAN><\/P> oauth2Endpoint="<\/SPAN>https:\/\/<\/A>myserver<\/EM>\/portal\/sharing\/rest\/oauth2"<\/SPAN><\/P> matchAll="true"\/><\/SPAN><\/P><\/P>Ist es möglich, diesen Typ von "teilweisem" Abgleich in der URL mit dem proxy anzugeben?<\/STRONG><\/SPAN><\/P><\/P>Aus der Dokumentation:<\/SPAN><\/P>Fügen Sie einen neuen <\/SPAN><serverUrl><\/CODE>-Eintrag für jeden Dienst hinzu, der den proxy verwenden wird. Die proxy.config erlaubt es Ihnen, das serverUrl-Tag zu verwenden, um einen oder mehrere ArcGIS Server-Dienste anzugeben, an die der proxy Anfragen weiterleitet. Das serverUrl-Tag hat folgende Attribute:<\/SPAN><\/EM><\/P>url<\/STRONG>: Standort des ArcGIS Server-Dienstes (oder einer anderen URL), der proxied werden soll. Geben Sie entweder die spezifische URL oder die Wurzel an (in diesem Fall sollten Sie matchAll=\"false\" setzen).<\/EM><\/LI><\/UL><\/BODY><\/HTML>
<serverUrl url="
<serverUrl><\/CODE>-Eintrag für jeden Dienst hinzu, der den proxy verwenden wird. Die proxy.config erlaubt es Ihnen, das serverUrl-Tag zu verwenden, um einen oder mehrere ArcGIS Server-Dienste anzugeben, an die der proxy Anfragen weiterleitet. Das serverUrl-Tag hat folgende Attribute:<\/SPAN><\/EM><\/P>url<\/STRONG>: Standort des ArcGIS Server-Dienstes (oder einer anderen URL), der proxied werden soll. Geben Sie entweder die spezifische URL oder die Wurzel an (in diesem Fall sollten Sie matchAll=\"false\" setzen).<\/EM><\/LI><\/UL><\/BODY><\/HTML>
Yes, but since it's not working, I'm wondering if it's misconfigured. I'm using Portal for ArcGIS Server 10.3, so I login to Portal > Add Item > An Application > Web Mapping with URL to the root of my site, Ready to Use, JavaScript API. I then view the item details in Portal and register it. I've tried a number of Redirect URI's thinking that might be the problem. I've tried the proxy, the page that calls the map, the home page. I've tried sharing with Everyone to eliminate that as an issue. The result is always an invalid token.
Pam,
Are you registering your production website application url to get your client Id and secret?
Robert, thank you for the response. I am using the latest proxy. The original post was a red herring. I don't think it's the way the serverUrl is specified as much as it is that the clientId and clientSecret don't work. Using the username and password works. Problem is, we generally avoid storing clear text login information in source code, even if the client can't see it. The clientId and clientSecret are more limited in access than a regular account. It seems my issue is related to using an application.
FYI:
IMPORTANT – as of today, 5/21/215, the release version of the proxy.ashx file for .NET and the most recent version of ArcServer do not play well together when token authentication is required. This is because 10.3 requires that token requests are done with a POST. the version above will attempt a GET resulting in a difficult to debug error. The issue can be found here: https://github.com/Esri/resource-proxy/issues/177A fix can be found here: https://github.com/esoekianto/resource-proxy-1/blob/45d9a49b58e3405c08a4f9e7157c491067b66760/DotNet/proxy.ashx - See more at: http://blogs.esri.com/esri/supportcenter/2015/04/07/setting-up-a-proxy/
IMPORTANT – as of today, 5/21/215, the release version of the proxy.ashx file for .NET and the most recent version of ArcServer do not play well together when token authentication is required. This is because 10.3 requires that token requests are done with a POST. the version above will attempt a GET resulting in a difficult to debug error.
The issue can be found here: https://github.com/Esri/resource-proxy/issues/177
A fix can be found here: https://github.com/esoekianto/resource-proxy-1/blob/45d9a49b58e3405c08a4f9e7157c491067b66760/DotNet/proxy.ashx
- See more at: http://blogs.esri.com/esri/supportcenter/2015/04/07/setting-up-a-proxy/
Not sure if the above applies to you but using the latest proxy may help.
Also I use a username and password with tokenServiceUri in your secured serviceUrls:
Angemeldete Mitglieder können Beiträge verfassen, Updates folgen und mehr. Neu hier? Registriere ein kostenloses Konto.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.