使用http协议下载文本数据

void app.onWIFI32(int m){
    str s;
    if (m==3){
        //wifi_httpget
        s=wifi_getinfo(12);
        echo(s);
        m1.text=s;
    }
}
void s1.onclick()
{
    wifi_httpget("http://a-diy.cn/");
}

以上代码中,通过wifi_httpget语句下载一个url对应的文本数据到dn默认下载数据区,然后再onWIFI32事件中,使用wifi_getinfo(12)获取下载成功的文本数据;受SHMICTRL系统字符串的限制,此文本只能返回1024字节的数据,请合理处理;

另外,由于wifi_httpget将数据下载到默认下载数据区,因此也可以在onWIFI32事件中使用psram之类的语句进行处理比如:

void app.onWIFI32(int m){
    str s;
    int addr;
    if (m==3){
        //wifi_httpget
        addr=wifi_getinfo(17);//获取当前dn下载区的addr
        s=psram_getstr(addr); //从addr区获取一个字符串
        echo(s);
    }
}

使用http协议下载二进制数据

void app.onWIFI32(int m){
    str s="1000:";
    int i;
    if (m==4){
        //wifi_httpdnbin
        for (i=0;i<100;i++){
            s=s+int2hex(psram_gv(0x1000+i,1),2)+" ";
        }
        m1.text=s;
    }
}
void s3.onclick()
{
    //从网站下载4096字节到0x1000地址的psram中
    wifi_httpdnbin("http://a-diy.cn/",0x1000,4096,1);
}
start();

使用wifi_httpdnbin 下载url对应的二进制文件,然后在onWIFI32事件中,使用psram_gv等函数对内存进行操作;