Solved

getQueryStringParameter New Responsive Form Designer

  • 15 September 2020
  • 10 replies
  • 98 views

getQueryStringParameter() returns empty an value.  Is there some place in the New Form URL that the query parameter should be placed?

icon

Best answer by FormsMagic 5 October 2020, 15:47

View original

10 replies

Userlevel 3
Badge +8

Hi,


It works as shown below :


 



You can place it since you follow the syntax : ...?param1=value1&param2=value2&....


 


Using the function getQueryStringParameter("Message"), you get the value. 


 


Keep in mind that the URL should be encoded.


 


Did you updated the NewFormUrl to add the query parameter ? If so, you have to encode the url value just like below :


 


...


$_.NewFormUrl = $_.NewFormUrl + "&Message=Welcome"
$_.Update($false)
$list.Update()
$Context.ExecuteQuery()


...


 


It works.


 


Hope that helps,


^^

Thanks a ton for just verifying it should work.


 


Based on your guidance, I ran some tests and it seems to behave differently per browser.  New Edge (Chromium) works while Chrome does not.


 


Per the attached image.


 


Thanks for the reply!




 

Userlevel 3
Badge +8

Hey @FormsMagic ,


 


I just checked on Chrome now. It works. 


 



 


Investigating the url and it seems parameters are encoded 2 times because url inside url (given as parameters). 


 


https://{tenant}.sharepoint.com/sites/en/demos/FormsApp/UFRuntime.aspx?remoteAppUrl=https://formso365.nintex.com&SPAppWebUrl=https://{app-id}.sharepoint.com/sites/en/demos/FormsApp&SPHostUrl=https://safalo.sharepoint.com/sites/en/demos/&ctype=0x0100B91DD926F882D94886BD17828654126D&client_id=73d49b7f-c0a4-4891-b2bb-65f7f7142c79&mode=0&Message=Welcome&List=1197e447-b454-42cf-9a7f-feddd980d


 


But if I change the email exactly with what you tested and with the encoded removed, it works.


 


Which version of Chrome do you use ? 


I use that one :



Is there any extension changing the behavior ?


If you open the developer tools, do you see console errors ?


 


I also have the last version of Nintex for Office 365. I


 


I am curious to know what is making it not working on your environment. 


^^


 


 

 



Google Chrome is up to date


Version 85.0.4183.102 (Official Build) (64-bit)

 

I do notice following "Issue" in Chrome console:

Indicate whether a cookie is intended to be set in a cross-site context by specifying its SameSite attribute


 


Because a cookie's SameSite attribute was not set or is invalid, it defaults to SameSite=Lax, which prevents the cookie from being set in a cross-site context. This behavior protects user data from accidentally leaking to third parties and cross-site request forgery.


Resolve this issue by updating the attributes of the cookie:

 



  • Specify SameSite=None and Secure if the cookie is intended to be set in cross-site contexts. Note that only cookies sent over HTTPS may use the Secure attribute.

  • Specify SameSite=Strict or SameSite=Lax if the cookie should not be set by cross-site requests




 Same issue shows up in new Edge but can get query string parameter.





 


Userlevel 3
Badge +8

Hi @FormsMagic,


 


I don't think the problem come from the cookie issue.


Could you check you full url parameters ? I guess there is maybe an invalid parameter that make the parsing parameters from Chrome failing.


 


 

Thanks for the reply.


 


I'm copying the URL from Chrome and pasting it into New Edge.  I've checked both URLs side by side and they are identical.  We're going to open a support ticket with Nintex.


 

Looks like its this old Legacy Browser Support extension that our admins force:













Hi,


We have the same problem all of the sudden (works in Edge but not in Chrome).


Did you manage to work around it in Chrome?


Thanks.

Hi,


 


Got the same problem on one of our customer app (not working on chrome).


Think it is a regression from Nintex form (or maybe chrome ?) because it was working before the summer.


 


Did you manage to work around it in Chrome?


 


Thanks

Tracked it down to disabling this setting in Chrome:


chrome://flags/#reduced-referrer-granularity


 


I believe Nintex is working on a more permanent fix.

Reply