第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

填充數(shù)組(列表)以將調(diào)用從 C# 發(fā)送到 php

填充數(shù)組(列表)以將調(diào)用從 C# 發(fā)送到 php

C#
牛魔王的故事 2023-07-09 16:31:55
因此,我將參數(shù)從 unity 傳遞到 PHP API,一切都很好,但現(xiàn)在我想將其作為數(shù)組傳遞,因此在這個(gè)方法中,我聲明了我的列表并嘗試使用正確的參數(shù)發(fā)送請求tokenID、address和value(最后 3 個(gè))需要從聲明的列表中填充,但我不知道如何做到這一點(diǎn)。任何幫助表示贊賞public List<string> recipientAdvancedAddress = new List<string>();public List<string> tokenAdvancedSend = new List<string>();public List<string> valueAdvancedSend = new List<string>();public void Send(){    StartCoroutine(SendAsync(userSession, senderAdvancedID, tokenAdvancedSend, recipientAdvancedAddress, valueAdvancedSend));}IEnumerator SendAsync(string session, int senderID, List<string> tokenID, List<string> addresses, List<string> value){    CryptoFilter cryptoFilter = new CryptoFilter();    cryptoFilter.AddParam("action", "advancedSendFT");    cryptoFilter.AddParam("session", session);    cryptoFilter.AddParam("senderID", $"{senderID}");    cryptoFilter.AddParam("tokenID", tokenID);    cryptoFilter.AddParam("addresses", addresses);    cryptoFilter.AddParam("value", value);    using (UnityWebRequest webRequest = UnityWebRequest.Post($"http://{SERVER_ADDR}/tsd/api.php", cryptoFilter.GetRequestPayload()))        {            yield return webRequest.SendWebRequest();            var result = webRequest.downloadHandler.text;            // Decrypt the response from the server.            result = cryptoFilter.GetResponsePayload(result);            sendItem data = JsonConvert.DeserializeObject<sendItem>(result);            if (!data.error)                txID = data.id;        }}這是錯(cuò)誤: https: //i.ibb.co/frNR5tF/error.png這是 CryptoFilter.cs 中的方法class CryptoFilter{    // Encrypt & Decrypt Engine    AES256 aes = new AES256();    // Request parameters    Dictionary<string, string> request = new Dictionary<string, string>();    /*     *     * Add a parameter.     *      */    public void AddParam(string name, string value)    {        if (value != "")            request.Add(name, value);    }順便說一句,我不能在主腳本中執(zhí)行 foreach 嗎?所以如果我有 1 個(gè) tokenID 就可以了,但是當(dāng)我需要將 2 個(gè) tokenID 發(fā)送到 2 個(gè)不同的地址時(shí),這就是我想要實(shí)現(xiàn)的目標(biāo)
查看完整描述

1 回答

?
翻翻過去那場雪

TA貢獻(xiàn)2065條經(jīng)驗(yàn) 獲得超14個(gè)贊

AddParam 方法的重載怎么樣:

AddParam(List<string>)

或者通用版本:

AddParam(List<T>)

甚至:

AddParam(Collection<T>)

我想我不太明白你在問什么,但在這個(gè)方法中,你也許可以循環(huán)遍歷這些項(xiàng)目并用它們做你已經(jīng)在做的事情。

編輯:看起來你最終需要一個(gè) json 。為此,您可以使用 Unity 的內(nèi)置序列化。首先創(chuàng)建一個(gè)表示 DTO(數(shù)據(jù)傳輸對象)的類,然后將其序列化為 json 字符串。

[Serializable]

public class CryptoFilter

{

    public string action;

    // other string fields


    public List<string> addresses;

    // other string list fields


    public CryptoFilter(string action, List<string> addresses)

    {

        this.action = action;

        this.addresses = addresses;

    }

}

然后使用:


CryptoFilter cryptoFilter = new CryptoFilter(...);

string json = JsonUtility.ToJson(cryptoFilter);

編輯:作為請求的字符串到字符串字典不適用于列表。使用可序列化的類,就像我為此發(fā)布的那樣。只需將其稱為 Request 等,而不是 CryptoFilter。然后創(chuàng)建該對象并將其設(shè)置為 CryptoFilter 一次,而不是多次調(diào)用 AddParam。


查看完整回答
反對 回復(fù) 2023-07-09
  • 1 回答
  • 0 關(guān)注
  • 119 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號