Is it possible to either Clone or Re-Send a UnityWebRequest?

We’ve recently started using UnityWebRequests and something that it is lacking is some way to dictate how many retries it should do before failure, and a manual timeout timer.

No big deal, we’ll just wrap it and have our own retries and timeout timer.

Except… There is no way to Send a UnityWebRequest twice. That sucks, I guess we’ll just allocate memory a bunch of times for retries. Fine. Except… There is no constructor that lets you copy one request’s info into another.

Any suggestions that don’t involve manually copying one request’s data into another?

Yeah you can do that

i know it is 2 years later but, i didn’t find other post about it.
i didn’t find a easier solution but came up with this:

public struct sRequest {
    UnityWebRequest request;
    string url;
    WWWForm form;

    public sRequest(string url, WWWForm form) {
        this.url = url;
        this.form = form;
        request = null;
    }
    private IEnumerator Send() {
        request = UnityWebRequest.Post(url, form);
        yield return request.SendWebRequest();
        if(request.error != null) yield return Send();
    }
}

This sends the request indefinitely, but you get the point.