https requests are not working in react native application - ruby-on-rails

I have a react-native application that was working fine until last week when I started getting this error. Now when I make an https request, I get this error 'Network request failed' on both IOS and android. Whereas when I request using http it works fine.
TypeError: Network request failed
at fetch.umd.js:535:18
at JSTimers.js:250:18
at _callTimer (JSTimers.js:146:7)
at Object.callTimers (JSTimers.js:399:7)
at MessageQueue.__callFunction (MessageQueue.js:436:42)
at MessageQueue.js:111:12
at MessageQueue.__guard (MessageQueue.js:384:9)
at MessageQueue.callFunctionReturnFlushedQueue (MessageQueue.js:110:10)
at debuggerWorker.js:69:58
For testing purpose I have tried to make an https request from same react-native application to the dummy apis available on internet it works fine. Moreover, I have also installed the previous stable version of the application that was working fine before but getting the same error on this as well. So, from that I'm assuming that issue might be from the server end but I've not made any noticeable changes to the server that could make it behave like that.
The strange thing is that the server is not showing any request in the logs coming from the react native application but it works fine when I request it using the postman application.
I've tried every solution that was available on internet but nothing worked. Moreover, I've tried using fetch and axios both to send request but the issue persists.
I have also checked the ssl certificates are installed, valid and trusted. For server I'm using the rails puma along with Nginx server.
Below are the details of the version of my application.
React Native
react-native-cli: 2.0.1
react-native: 0.61.5
Nginx
nginx version: nginx/1.14.0 (Ubuntu)
Rails
Rails 5.2.2.1
ruby 2.6.8p205
puma 3.7

Related

Ruby Savon SOAP client can't find requested URL

I am using the Savon Gem in my Rails 5 app.
Everything was working fine and suddenly I get an error:
The requested URL /soap/IHubInterfaces was not found on this server.
Apache/2.4.7 (Ubuntu) Server at www.URL.com Port 443
I have a GUI tool called SoapUI and with this tool everything works. Like I mentioned my Rails app also worked until 2 weeks ago.
Any ideas how I can start debugging?

Forbidden 403 for parse-server on version 2.2.24 and above

I want to update my server with the latest version of parse server, but I am running into the issue where are all the calls send back a 403 Forbidden.
The exact same calls work on 2.2.23 and below but not on 2.2.24 and above. I am using parse for an iOS app, where I am using SDK 1.14.
Notes on the setup:
added VERBOSE environment variable, logs correctly on 2.2.23 but nothing on 2.2.24
running the server in localhost with node v6.9.1 installed.
pointing to a DB in mLab with mongod version: 3.0.12.
using express "~4.14.x"
Reviewed issues:
https://github.com/ParsePlatform/parse-server/issues/508 Where the
user was able to fix it by starting from scratch with
parse-server-example. I have tested this, using my ParseServer
instantiation and copying over the cloud code, I am having the same
issue.
https://github.com/ParsePlatform/parse-server/issues/1017 Was about
passing the X-Parse-Application-Id, which I am doing since it is
working for 2.2.23 but not for 2.2.24 and higher
Has anybody experienced something similar? Any hint on what I could try?
Thanks!

How to set in meteor --mobile-server when using nginx

I have on digitalocean my meteor application running but when I try and test on my iphone the app I am not able to see the login screen.
I don't think it's version dependent and I therefore do not list them. I am happy to provide all the config files if this helps but want to make sure that I am not missing anything conceptually.
My setup is that on my digitalocean (not real URL: https://ABC123.com) server I run the meteor app and the app works fine at the URL. The meteor application has been deployed a while back and is a different release from what I am testing now locally. Source code is quite similar though and it never worked on the iphone. nginx is used to forward the URL domain to
proxy_pass http://127.0.0.1:3100;
Here is the issue now:
I run from my local mac:
meteor run ios-device --mobile-server https://ABC123.com
and run from xcode on the simulator or my iphone and get the attached screenshot. You can see that there is no login prompt which I believe is caused that I do not connect to the server on digitalocean.
It's a also surprising that with the command meteor runs on localhost:3000 as well. But it's probably not the issue.
The way it should look is the below which is taken from the web page:
Thanks already in advance for any responses.
This is resolved. Using Safari as a debugger I noticed that the connection to the server failed due to a non AC SSL certificate. So, after I fixed the SSL certificates it does connect now.

Is Websocket enabled in Google app engine Ruby runtime?

As in rails 5, action cable can be used as a layer above the application to provide persistent connection (WebSocket). So I created an application and tested locally then deployed it to Google AppEngine flexible environment Ruby runtime. the application runs fine except the WebSocket part.
I checked the console in the browser and found that it keeps giving this error:
WebSocket connection to 'ws://mydomain.com/cable' failed: Error during WebSocket handshake: Unexpected response code: 400

websocket-rails standalone mode running heroku

I'm trying to run websocket app using rails module "websocket-rails" by standalone
mode on heroku. I ran the app in my local env but it seems not working on heroku.
It seems my app cannot reach websocket server.
I use redis for the websocket backend and the redis config does not show any errors.
Is there anything else I can check to investigate the fault? Or heroku does not
support standalone mode websocket?
If there is any document, I'll appreciate that.
thanks in advance.
It was just the setting of websocket server. I'm not sure this is the legit answer, but just specify the app uri for websocket server, it worked. I wrote the details here

Resources