我正在使用libcurl来提供HTTP GET和PUT请求 请求包含登录名,密码和一些其他信息。
密码包含@ symbol - 1qa @ WS#ED 查询按以下方式创建
snprintf(api_req, sizeof(api_req), "http://%s:%s@%s/export?uuid=%s",\
XEN.user_name,XEN.user_passwd, XEN.host_ip, BACKUP_TASK.vm_uuid)
http://root:1qa@WS#ED@192.168.1.1/export?uuid=4851501f-82d5-cb73-3158-175cffbbf848
当然,此请求将失败,因为@ shoul应转换为%40,也适用于':',点,百分号等 但这是任何操作系统和用户帐户的OK密码。 处理此类问题的最佳方法是什么?使用replacemnents解析每个符号的字符串符号似乎不是很有效。 我正在使用普通的C