如何解决Kotlin:具有基本身份验证和参数的发布请求导致服务器错误
我正在使用kotlin android应用程序通过基本授权连接到一个宁静的服务。 import os.path as path
# Path to file.
path_to_data = path.join(path.dirname(path.realpath(__file__)),'data.txt')
print(path_to_data)
# Read file contents.
with open(path_to_data) as file:
data = file.read()
print(data)
# Now we need to parse it for square braces.
data = data.replace("\n"," ").replace(" "," ")
data = data.replace("[ ","[").replace(" ]","]")
print(data)
# Now we loop through the string looking for [ symbols.
data_list = []
start_index = 0
end_index = 0
while 0 <= data.find('[',start_index):
start_index = data.find('[',start_index)
if 0 <= start_index <= data.find(']',start_index):
end_index = data.find(']',start_index)
# Don't include the braces,actually: grab what's in-between.
temp_str = data[start_index+1:end_index]
# Now split into a list based on spaces.
data_list.append(list(map(int,list(temp_str.split(" ")))))
start_index = end_index
print(data_list)
标头已检查。 Authorization
被选中。 params
被选中。还要检查防火墙。
但是我遇到url
错误。
在com.android.volley.ServerError
中可以使用此值。这是我的代码的一部分:
Postman
解决方法
经过一番挣扎后找到了答案。只需替换
override fun getParams(): Map<String,String> {
val params = HashMap<String,String>()
params["username"] = "username"
params["password"] = "password"
return params
}
使用
override fun getBodyContentType(): String {
return "application/json"
}
override fun getBody(): ByteArray {
val params2 = HashMap<String,String>()
params2.put("username","username")
params2.put("password","password")
return JSONObject(params2 as Map<*,*>).toString().toByteArray()
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。