Cordova + Win10 + WebSocket: connection fails with SECURITY_ERR - windows

I'm porting an existing Cordova app from Android to Windows 10. The app must open a WebSocket connection to a remote server. At the moment, the connection always fails with the error "WebSocket Error: SECURITY_ERR, Cross zone connection not allowed". The same app is also making regular AJAX requests to the same server and they're working fine.
I'm using Visual Studio 2017 and testing the app locally, using Edge/13.10586.
Is it possible to make the WebSocket connection to work?
UPDATE
My app has both "Internet (Client)" and "Private Networks (Client & Server)" capabilities set. Further tests show that the problem is caused by the combination of web context ("ms-appx-web:") and attempting to connect the WebSocket to a non-FQDN (I'm using only the hostname). If I use FQDN or the IP address instead, it works. If I use local context ("ms-appx:") instead, with non-FQDN, it works.

Related

Prepare Teams App Dependencies fails behind proxy

I create a new Teams application in Visual Studio 2022 (17.4.4). When I try the "Prepare Teams App Dependencies", I get a failure from AppStudioPlugin with the message "API call to Developer Portal failed: Error, connect EACCES 52.113.194.132:443, API name: create-app, ..."
I am behind a proxy, and I see a drop in the firewall logs to 52.113.194.132:443, so it's not going to the proxy.
When I open a browser on that machine, I can go to the developer portal (https://dev.teams.microsoft.com/) without a problem, so the proxy does allow this.
When I open port 443 in the firewall, everything works.
My question is: How do I get it to work via the proxy ?
I did already try to add the proxy to the visual studio config, but also that did not make a difference.
17.4 VS Teams Toolkit uses a language server to handle data between VS and Teams Dev portal. You can try to add this language server to your proxy and test it.
Language server location: ~\appdata\local\microsoft\visualstudio\{VS_version}\extensions\Microsoft\teams toolkit\{Teams_toolkit_version}\server.exe

Xamarin unable to Connect to Web Service

I am running Xamarin on a computer that is connected to a VPN. I can browse web services from an internet browser that are inside the VPN. However, when I run Xamarin, I get the following error that shows up in Visual Studio:
System.Net.WebException: Error: ConnectFailure (Network is unreachable)
Is there something else that needs to be set up for Xamarin so that it finds these web services? Or does the Emulator specifically need to get set up to connect to the VPN as well?

worklight 6.0.0 facebook app fails to call a worklight adapter

we are doing worklight app on a android and a desktopenvironment(for facebook) that works fine on the liberty profile server (developer worklight environment).
Know we need to post this app on Facebook but to do this we need to use the https protocol on our WAS server, to do this we set the ip, port, protocol: to our external server, and deploy our app with build for remote server, but when the app tried to call an adapter on the server, the Firefox console returns us this:
[09:58:50.675] "response [https://[publicIP]:[port]/WorklightPocProj/apps/services/../../invoke] success: /*-secure-
{"challenges":{"wl_antiXSRFRealm":{"WL-Instance-Id":"ih80d8pjg6la8ubccb7503b936"}}}*/"
and
[09:58:50.675] "defaultOptions:onFailure Procedure invocation error."
The application security on our WAS server is disabled and the ip/port are reachable too.
if i add to the XML adapter on the procedures securityTest="wl_unprotected" the app runs correctly, but i don't to do this workaround
Is there any configuration that we are missing on the app or in our WAS server?
A lot of time since this question but just for trying to help people that hit this question because of the search "defaultOptions:onFailure Procedure invocation error".
Also facing this issue in Worklight 6.1
In my case I faced this issue because I had the following configuration in the adapter .xml:
<procedure name="anyMethod"></procedure>
This works in the development server, but in a stand alone server (at least in WAS) you have to change it for:
<procedure name="submitAuthentication" securityTest="wl_unprotected"></procedure>
In both cases it is unprotected.

Flash can't access XML files when running under Localhost

We have a Flex/Flash application that loads information from XML files created by a .NET application. It works fine under IIS but when I try to run it from Visual Studio 2010 or 2012 using the ASP.NET Development Server, the Flex/Flash app isn't loading the information. I brought up Fiddler and am able to see that there's an error occurring when the Flash tries to access the XML:
[Fiddler] The socket connection to localhost failed. ErrorCode: 10061. No connection could be made because the target machine actively refused it 127.0.0.1:80
I've turned off my Firewall but that didn't help. So, I'm not sure where the block is occurring. Any thoughts?
[Update: switched from Asp.NET Development Server to IIS Express and am still getting the exact same error.]
[Update2: I've verified that the XML file the Flash is trying to reach comes up fine in the browser: http://localhost:63318/ProductDetailsXML.aspx?ProductId=71]
It may have to do with it being served off of a specific port (not 80). How is your application requesting the XML file? According to your Fiddler log, it's trying port 80, but your site is running on port 63318.

WebDeploy - just can't get it to work

I've installed Web Deploy 2.1 on a Server 2008 R2 running under VMWare.
In the IIS Manager (Management Service applet) I can see that "Enable Remote Connections" is checked and the port is set to 8172. Under "IIS Manager Permissions" I've added my Windows account (CORP\ekkis) and under the "Authentication" applet (for IIS) I have enabled "Windows Authentication".
I've also turned off the firewall.
So from the command line I test the system to work like this:
C:\Program Files\IIS\Microsoft Web Deploy V2>msdeploy -verb:dump -source:contentPath=\temp,wmsvc=192.168.0.70,username=CORP\ekkis,password=MyPass,authType=Basic -allowUntrusted=True
and get this:
Info: Using ID '9b954a0f-ff07-4e77-ba2c-d27472f5fda0' for connections to the rem
ote server.
Error Code: ERROR_USER_UNAUTHORIZED
More Information: Connected to the destination computer ("192.168.0.70") using t
he Web Management Service, but could not authorize. Make sure that you are using
the correct user name and password, that the site you are connecting to exists,
and that the credentials represent a user who has permissions to access the sit
e.
Error: Object of type 'contentPath' and path '\temp' cannot be created.
Error: The remote server returned an error: (401) Unauthorized.
Error count: 1.
I've also tried deploying with Visual Studio 2010 from the host OS with the following service urls (I haven't found proper documentation on how to form this url):
https://192.168.0.70/
https://192.168.0.70:8172/
https://192.168.0.70:8172/MsDeployAgentService/
https://192.168.0.70/MsDeployAgentService/
I've tried the non-secure versions as well but just cannot get it to work. What is the correct format for the url? and what permissions am I missing?
the errors from VS have varied depending on how I attempt it but below is a sample:
Could not complete the request to remote agent URL 'http://192.168.0.70:8172//MSDEPLOYAGENTSERVICE'.
The underlying connection was closed: An unexpected error occurred on a receive.
Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host.
An existing connection was forcibly closed by the remote host
Publish failed to deploy.
there really should be a guide out there to do this (yes, I've googled myself blue in the face)!
thanks - ekkis
ok, I've figured out that the correct url is:
https://192.168.0.70:8172/MsDeploy.axd
and that having the "Windows Authentication" enabled doesn't seem to make a difference. Also, having my account in the "Managers" list doesn't seem to make a difference either.
so the back end was all working fine (I've turned off the Web Deployment Agent Service). it was just the url I had wrong.

Resources