allow mixed http over https on chrome extension - google-chrome-extension

I would like to run a dev resource that is in my localhost via a chrome extension I develop (for debugging).
As understood my extension cannot call localhost (my dev environment) because it runs on http and not https, as most sites are today.
Is there a way that I can run my extension and access my local dev environment?

Related

ng serve | Will not cast to ther devices

I run my app to my local machine via ssl like this:
ng serve --ssl --host: 0.0.0.0
so it is up at: https://localhost:4200
I also using my ipv4 adress which is: XXX.XXX.XX.XXX to make my requests to the server via my services, so i make my api calls like this: https://XXX.XXX.XX.XXX:80/api...
In my back end, I have created an https server so my API calls are been made via https
Everything works great to my desktop
Problem is: The app wont cast to ther devices.. it wont even load and
after some time i get the msg this site cannot be reached
The built in webpack server that is used for ng serve is not meant for production or sharing to other computers, it is only supposed to work on local for development because of security reasons. You should consider hosting a compiled version with a separate web server such as nginx. If you absolutely NEED the built in webpack one to work, you can force it to bind to all of your IP addresses with this:
ng serve --host 0.0.0.0
You may need to disable the host check as well:
ng serve --host 0.0.0.0 --disable-host-check
You can access this, but you might need to turn off your Firewall, this mostly happens in windows machines.
Try turning it off and accessing the IP from other machine.

can not access http://192.168.56.1:3000 from mobile device while using browsersync

I have installed browsersync using command npm install -g browser-sync in windows 10 x64. nodejs version 10.11.0 browsersync version 2.26.3
everything is working fine in desktop. but when i try to access http://192.168.56.1:3000 from mobile device using same wifi, i get "this site can't be reached"
i have installed another tool named dev-ip which returns this in powershell:
[ '192.168.56.1', '192.168.0.120' ]
the ip series 192.168.0.120 used to work fine in my mobile devices.
now, how to use the ip 192.168.0.120 instead of 192.168.56.1 in browsersync globally?
Just specify the host in your configuration that you want the server to run on.
Eg. In you case it would be
host: "192.168.0.120"
You can refer to the link below for more information.
https://www.browsersync.io/docs/options#option-host
Hi, guys. This is how it worked for me:
Source:
windows 10
all firewalls are closed
network access (from windows) to the PC is disabled
external url from gulp 192.168.56.1:3000
proxying local php site from OpenServer
external device - iphone safari/chrome
external (virtual) device - vwware with macos
make sure that Windows Defender firewall monitor in high-risk mode -> rules for incoming connections -> Node.js: Server-side JavaScript is enabled (and other necessary apps)
Solution:
look at what ip address in the home network my PC has (all devices are connected to the same network) - for example 192.168.1.103
in the gulp file I specify it host: "192.168.1.103",
save
checking it out
Important:
for source - external device - iphone safari/chrome - correct url is only 192.168.1.103:3000
for source - external (virtual) device - vwware with macos - correct urls is 192.168.1.103:3000 and 192.168.56.1:3000 both
Visually in pic:
Result:
Checked on all devices, in virtual devices, on the PC itself
browsersync works
the Internet is not lost
there is no address conflict within the network
Hope this will help someone too 🙂
You don't have to change the settings.
run cmd using Administrator
run ipconfig
copy IPv4 address like 192.168.43.52
Now open google on mobile and add http:// at the front and :3000 or :5500 at the back.
like run http://192.168.43.52:3000

Running protractor tests on IE

I was using vm xp on MAC. MAC and vm are in a network but I'm unable to run protractor tests.
When I run, after pointing Selenium address to vm PC IP in n config file, I can see the IE browser initiating and see the nodejs app URL but I'm unable to access the app.
The nodejs server is running on port 9001 and the app is running on 9009 on my local computer which is a Mac PC.
I can browse the app manually with the IP address 10.0.2.2 on vm but not with protractor config.
I am missing something. Don't I need to open ports on the Mac?
What baseurl in protractor config should I use?
I have pointed selenium address to vm ip address and it is working.
And also the nodejs server is running at 0.0.0.0:9001 port.
The testing story for VM's is a little rough, but there are a few approaches to this:
adding a common hostname (myapp.local) to /etc/hosts (and the windows host file) and using that as the protractor baseUrl
Separating the IE tests from other tests and using the host machine's ip as your baseUrl: baseUrl: 'http://10.0.2.2:9000/'
Alternately, you can use a service like SauceLabs or BrowserStack and run your tests on IE through "the cloud". If you can afford the cost i'd highly recommend them.

Ionic Desktop Testing

Is there any advantage in testing the ionic app on a web browser using the the ionic serve command vs just running a local apache server and browsing the www folder (e.g. http://localhost/www/#/app/home). I checked the serve.js file in the npm module and apparently all it does is listening for a tcp connection on a default port using nodejs modules.
There are a few advantages, but you are certainly able to use a local apache server as well.
ionic serve benefits
It runs with the ability to have live reload, meaning if you save a file in your editor the app will auto-refresh in your browser. You can disable by with the -r flag on the command.
It can open a browser when you start up, which can be nice or annoying. You can disable with the -b flag on the command.
It sets up a local server for you, regardless if your files are in the apache www directory. It lets you store the files anywhere in your system.
Apache benefits
You can setup .htaccess rules to rewrite urls to properly support html5mode in Angular. I don't do this on mobile apps since the urls are not available in apps.
Runs on port 80. You don't have to worry about ports or remembering what port to use.
Its up to you really, but I use ionic serve. You can also use cordova serve which does the same as ionic serve without live reload and browser open, and runs on localhost:8000.

Why can't I open a website in the browser even though I can curl on my linux localhost?

I can curl the contents of an internally hosted site using curl http://localhost:9000 but cannot connect when I try to open the same in the windows browser http://ip-address:9000/. I am trying to do this from within the internal network.
The admin needed to open up iptables port 3000 and then it worked on the browser.
Getting the site via curl using localhost as the address implies that your machine (the local host) is the one hosting the site. Then you say that you're on Windows and the site's being served by a linux machine. Which is it?
Regardless, if you can get the contents via curl using http://localhost:9000, then you should be able to get the contents via your web browser using http://localhost:9000. Try that.

Resources