Я пытаюсь отправить запрос POST для добавления некоторого содержимого в окно API. Правила таковы, что формат тела должен быть XML (значения должны быть XML-экранированными), HTTP-метод (post), требуется аутентификация (да), запрос содержимого (тип контента: «application / xml»
<entries?
<entry tag="some_tag">
<value>XML-escaped-entry belongs here</value>
</entry>
<entry tag="some_tag">
<value>XML-escaped-entry belongs here</value>
....
...
</entries>
Я отправляю запрос следующим образом и получаю ошибку 400 неверных запросов. Это сработало, когда я ввел одно значение для ввода.
For i As Integer = 0 To searchItems.Count - (1000 - max)
data = data + "<entries><entry><value>" & searchItems.Item(i) & "</value></entry></entries>" & vbNewLine
Next
If uri.Scheme = uri.UriSchemeHttps Then
Dim request As HttpWebRequest = HttpWebRequest.Create(uri)
request.Method = method__1
request.ContentLength = data.Length
request.ContentType = "application/xml"
request.Credentials = New System.Net.NetworkCredential("xxx@xxx.com", "xxxxxx")
Dim writer As New StreamWriter(request.GetRequestStream)
writer.Write(data)
writer.Close()
Dim oResponse As HttpWebResponse = request.GetResponse()
Dim reader As New StreamReader(oResponse.GetResponseStream())
Dim tmp As String = reader.ReadToEnd()
oResponse.Close()
End If
дополнительные правила:
-Лучшая практика заключается в постепенном добавлении и удалении изменений в ваш список записей вместо удаления / воссоздания всего списка каждый раз, когда необходимо внести изменения.
-Новые записи размещаются в верхней части очереди для опроса и обрабатываются в режиме LIFO.