Is there a way to deserialize url query string to to net struct directly?

I have net structs and want to de-serialize query string like "child.a=20&child.b=20" directly.
I can pass net values in url by utilizing querystring.

 #[derive(Deserialize, Serialize, PartialEq, Debug)]
struct ChildStruct {
    a: i32,
    b: i32,
}

#[derive(Deserialize, Serialize, PartialEq, Debug)]
struct Query {
    child: ChildStruct
}

// playground
https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=4cb4bb65af40c77ce80b73d79927f402

  • reference

sample request in aliyun open api:

https://ecs.aliyuncs.com/?Action=DescribeDisksFullStatus
&RegionId=cn-hangzhou
&DiskId.1=d-disk1
&EventId.1=e-event1
&Status=Available
&HealthStatus=Warning
&EventType=Stalled
&EventTime.Start=2018-05-06T02:43:10Z
&EventTime.End=2018-05-08T02:48:52Z
&PageNumber=1 
&PageSize=10 
&<Common request parameters>