Behavior change when global parameter passed

HI!

I upgraded to 7.7.2 from 7.0.3 and noticed a change in the way a Global Variable is passed as a parameter in a URL web request.

For example:
https://${GlobalVariable.domain_name}/driver?${GlobalVariable.clientFriendlyName}

In the Profile, I have a variable, clientFriendlyName defined as clientFriendlyName=xyzsystem
In my object, I have a query parameter named ${GlobalVariable.clientFriendlyName} with no value.

This is what appears in the URL.
https://${GlobalVariable.domain_name}/driver?${GlobalVariable.clientFriendlyName}

Using the old version, this ran fine.
The new version does not recognize the query parameter and the back office rejects with a missing clientFriendlyName message.

To fix, I had to add a ? in front of the variable name – ?clientFriendlyName=xyzsystem
and remove the question mark on the object’s URL. So the new URL looks like this…
https://${GlobalVariable.domain_name}/driver${GlobalVariable.clientFriendlyName}

Before I go and update all my scripts, I thought I would bring this to your attention in case this is a bug or intended behavior.

@vjohnson

I do not quite understand what you mean.

Could you please take screenshots of the Profiles definition and the TestObject definition?

Using v7.0.3 – the profile looked like this

Object looked like this

After upgrading to 7.7.2
Changed profile to include the question mark…

Change object to not use the global variable as a parameter, which removed the question mark in the URL.

You wrote this:

This is not the way you should. You should rather write this:

… and

you had this:

This is not the way you should. You should rather write this:

Thank you!! That worked.

1 Like