Shopify\Utils::sanitizeShopDomain(): Argument #1 ($shop) must be of type string, null given

pl_andrea
Shopify Partner
2 0 1

Hello,

I'm getting error:

 

Shopify\Utils::sanitizeShopDomain(): Argument #1 ($shop) must be of type string, null given

 

when first installing app from shopify cli with php.
I'm using WSL2 with Ubuntu 20.04, i access install page with the ngrok link something like:
 
and after successfully installed my app on my dev store i get a white page. From Laravel log i can see 

 

Shopify\Utils::sanitizeShopDomain(): Argument #1 ($shop) must be of type string, null given, called in /home/andrea/projects/shopify/test4/routes/web.php on line 29 {"exception":"[object] (TypeError(code: 0): Shopify\\Utils::sanitizeShopDomain(): Argument #1 ($shop) must be of type string, null given, called in /home/andrea/projects/shopify/test4/routes/web.php on line 29 at /home/andrea/projects/shopify/test4/vendor/shopify/shopify-api/src/Utils.php:31)
[stacktrace]

 

From what i could debug Laravel receive 3 times a hit on the fallback route and the third one contains no parameters.

The app is installed on the test store but if i enter app page i get the sanitizeShopDomain error.

 

I'm using:

WSL2 on Ubuntu 20.04

Composer 2.0.13

PHP 8.0.17

Shopify Cli 2.15.6

Ruby 2.7.0p0

Node 10.19.0

 

What could be the issue here?

Any help will be appreciated

 

thank you

 

Replies 6 (6)

pl_andrea
Shopify Partner
2 0 1

For people having same issue, node.js version needed to be 14 or more. 

While compiling app from shopify app, node was failing quietly.

Upgrading node was the solution, hope it will helps to someone.

pawankumar1
Shopify Partner
1 0 1

I am having latest version but it's not perfroming and giving me same error.

tiantianRandy
Shopify Partner
3 0 0

I have just fixed this issue. Because your name of app is conflict with Shopify certain modules. so your app's name was set blank .It cause to show an error . you cannot use link like "http://127.0.0.1:51567" etc. you should use the link 

https://xxxxxx.jp.ngrok.io?shop=testxxx.myshopify.com&host=dGVzdHl5bC5teXNob3BpZnkuY29tL2FkbWlu".it will be shown when you run the command " Shopify app dev".  In a word,  notice the name of app, make it is available.

Happiness
Shopify Partner
20 0 15

I've the same issue. Was anyone able to solve this? I'm using the PHP(Laravel)/React template for the app. It's working fine when it is run as dev from ngrok but not working from the Docker.

Happiness
Shopify Partner
20 0 15

Looks like the issue was in using local env settings in my case. Use APP_ENV=production, disable debug and don't forget about SHOPIFY_API_KEY, SHOPIFY_API_SECRET, SCOPES, HOST variables

HoffKruspe
Shopify Partner
2 0 0

This really helped, my problem was the APP_ENV. Thanks!