Skip to content

Commit 40927a7

Browse files
committed
using new unitywebrequest type
1 parent 000a601 commit 40927a7

File tree

3 files changed

+63
-16
lines changed

3 files changed

+63
-16
lines changed

Assets/Thirdweb/Core/Contract Definitions/Forwarder/ContractDefinition/ForwardRequest.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,6 @@ public class ForwardRequestBase
2727
public virtual BigInteger Nonce { get; set; }
2828

2929
[Parameter("bytes", "data", 6)]
30-
public virtual byte[] Data { get; set; }
30+
public virtual string Data { get; set; }
3131
}
3232
}

Assets/Thirdweb/Core/Scripts/TransactionManager.cs

Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ public static async Task<TransactionReceipt> ThirdwebWriteRawResult<TWFunction>(
7575
new MinimalForwarder.GetNonceFunction() { From = functionMessage.FromAddress }
7676
)
7777
).ReturnValue1,
78-
Data = f.GetDataAsBytes(functionMessage)
78+
Data = f.GetData(functionMessage)
7979
};
8080

8181
var signature = await EIP712.GenerateSignature_MinimalForwarder("GSNv2 Forwarder", "0.0.1", ThirdwebManager.Instance.SDK.nativeSession.lastChainId, relayerForwarderAddress, request);
@@ -84,21 +84,24 @@ public static async Task<TransactionReceipt> ThirdwebWriteRawResult<TWFunction>(
8484

8585
string txHash = null;
8686

87-
var req = new UnityWebRequest(relayerUrl, "POST");
88-
byte[] bodyRaw = System.Text.Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(postData));
89-
req.uploadHandler = (UploadHandler)new UploadHandlerRaw(bodyRaw);
90-
req.downloadHandler = (DownloadHandler)new DownloadHandlerBuffer();
91-
req.SetRequestHeader("Content-Type", "application/json");
92-
await req.SendWebRequest();
93-
if (req.result != UnityWebRequest.Result.Success)
87+
using (UnityWebRequest req = UnityWebRequest.Post(relayerUrl, ""))
9488
{
95-
throw new UnityException(
96-
$"Forward Request Failed!\nError: {req.downloadHandler.text}\nRelayer URL: {relayerUrl}\nRelayer Forwarder Address: {relayerForwarderAddress}\nRequest: {request}\nSignature: {signature}\nPost Data: {postData}"
97-
);
98-
}
99-
else
100-
{
101-
txHash = req.downloadHandler.text;
89+
byte[] bodyRaw = System.Text.Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(postData));
90+
req.uploadHandler = (UploadHandler)new UploadHandlerRaw(bodyRaw);
91+
req.downloadHandler = (DownloadHandler)new DownloadHandlerBuffer();
92+
req.SetRequestHeader("Content-Type", "application/json");
93+
await req.SendWebRequest();
94+
if (req.result != UnityWebRequest.Result.Success)
95+
{
96+
req.Dispose();
97+
throw new UnityException(
98+
$"Forward Request Failed!\nError: {req.downloadHandler.text}\nRelayer URL: {relayerUrl}\nRelayer Forwarder Address: {relayerForwarderAddress}\nRequest: {request}\nSignature: {signature}\nPost Data: {postData}"
99+
);
100+
}
101+
else
102+
{
103+
txHash = req.downloadHandler.text;
104+
}
102105
}
103106

104107
return await ThirdwebManager.Instance.SDK.nativeSession.web3.TransactionReceiptPolling.PollForReceiptAsync(txHash);

Assets/Thirdweb/Examples/Scenes/Scene_Prefabs.unity

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,50 @@ NavMeshSettings:
123123
debug:
124124
m_Flags: 0
125125
m_NavMeshData: {fileID: 0}
126+
--- !u!1 &89313707
127+
GameObject:
128+
m_ObjectHideFlags: 0
129+
m_CorrespondingSourceObject: {fileID: 0}
130+
m_PrefabInstance: {fileID: 0}
131+
m_PrefabAsset: {fileID: 0}
132+
serializedVersion: 6
133+
m_Component:
134+
- component: {fileID: 89313709}
135+
- component: {fileID: 89313708}
136+
m_Layer: 0
137+
m_Name: AsyncCoroutineRunner
138+
m_TagString: Untagged
139+
m_Icon: {fileID: 0}
140+
m_NavMeshLayer: 0
141+
m_StaticEditorFlags: 0
142+
m_IsActive: 1
143+
--- !u!114 &89313708
144+
MonoBehaviour:
145+
m_ObjectHideFlags: 0
146+
m_CorrespondingSourceObject: {fileID: 0}
147+
m_PrefabInstance: {fileID: 0}
148+
m_PrefabAsset: {fileID: 0}
149+
m_GameObject: {fileID: 89313707}
150+
m_Enabled: 1
151+
m_EditorHideFlags: 0
152+
m_Script: {fileID: 11500000, guid: f11ec4617f62c224b99e34972dc917a8, type: 3}
153+
m_Name:
154+
m_EditorClassIdentifier:
155+
--- !u!4 &89313709
156+
Transform:
157+
m_ObjectHideFlags: 0
158+
m_CorrespondingSourceObject: {fileID: 0}
159+
m_PrefabInstance: {fileID: 0}
160+
m_PrefabAsset: {fileID: 0}
161+
m_GameObject: {fileID: 89313707}
162+
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
163+
m_LocalPosition: {x: 0, y: 0, z: 0}
164+
m_LocalScale: {x: 1, y: 1, z: 1}
165+
m_ConstrainProportionsScale: 0
166+
m_Children: []
167+
m_Father: {fileID: 0}
168+
m_RootOrder: 6
169+
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
126170
--- !u!1 &136589466
127171
GameObject:
128172
m_ObjectHideFlags: 0

0 commit comments

Comments
 (0)