-
Notifications
You must be signed in to change notification settings - Fork 4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[firebase_dynamic_links] queryParameters added to generated ShortDynamicLink are not received in FirebaseDynamicLinks.instance.onLink callback #29
Comments
I'm going to try to check this this week. EDIT: Finally I will be able to check this next week: September 23-29 |
I've checked on iOS and Android and I was able to retrieve the whole link with query params included. Can you try to build the dynamic link via Firebase console to verify it is not a problem on the creation process? |
Hi, |
Why are you adding the query params to the short link generated? I think that is not the way to go, you should pass the query params to the link before the short link is generated so Firebase returns those params in the URL resolved. You have two ways to generate dynamic links:
in both cases you can add query params to the link (in long links you have to URL encode the link in the link query param). I think this is not a bug, we could add the original link the user clicks to PendingDynamicLinkData structure as a feature request, but I do not see any use case in which this is needed so I think we should not make the effort. |
Thanks for quick response. After creating this bug I found out about this attribute and started using that. However I was still not sure if it was secure enough. As the new token though longer was around 17 characters (128 bit + 1 byte checksum?) so, I left the bug/feature request open in hope of being able to add additional longer token at end to be, doubly sure. https://*.page.link/thPML8T8T9wqOers7 I will depend on your judgement about if it is secure enough to mark this issue close. |
Hi, I understand your need to add some kind of security to your application, but I think the layer to do so is not in the link generation which is not secure enough, I think the way to go is once you have the dynamic link handled, combine the work in the app and server side to guarantee the user which is going to use the dynamic link can do the action the dynamic link represents. I think you are trying to add security in a layer which is pretty issue to skip. What do you think? |
Yes. https://drive.google.com/file/d/0BPHW_2QQcDuQc3RhjnRlcl0maWxl/view?usp=sharing App is sharing a resource among users who otherwise have no handle to each other. Passing of link among them via messaging or email is the only way to permission the sharing of resource between them. The issue is not a show stopper after I transitioned to "ShortDynamicLinkPathLength.unguessable". I also added extra time checks for validity of shared URL, so am more ok with what I have right now. There could be alternate solution like adding few more bytes to the link generated to make it crypotgraphically secure. Will leave it to your discretion to close it. |
Ok, I know understand your use case, I've added an attribute to PendingDynamicLinkData Try this
|
Hello @jherencia @simpleapps4goodlife I am facing the similar issue for passing and fetching query parameters for firebase dynamic links. Can you please answer me at stackoverflow question Here Any help would be useful. Thanks. |
@JayM96 I would like not to spread the information in two channels: stackoverflow and here. I'd be happy to help if you bring the communication here. |
@jherencia I have opened an issue in the same package here. So you can answer (#1289) Thanks for the reply |
I'm going to close this as it is two major versions removed from latest, and the issue creator no longer exists. |
Future createDynamicLink(String shareId) async {
final DynamicLinkParameters parameters = DynamicLinkParameters(
uriPrefix: '',
link: Uri.parse(''),
androidParameters: AndroidParameters(
packageName: '',
minimumVersion: 0,
),
dynamicLinkParametersOptions: DynamicLinkParametersOptions(
shortDynamicLinkPathLength: ShortDynamicLinkPathLength.short,
),
);
final ShortDynamicLink shortLink = await parameters.buildShortLink();
Uri url = shortLink.shortUrl;
url = Uri.https(url.authority, url.path, {shareIdLabelInDynamicLink: shareId});
return url.toString();
}
Else where when the link is clicked and app gets launched, sharedListId below is not populated.
The text was updated successfully, but these errors were encountered: