QHttpMultiPartclass resembles a MIME multipart message to be sent over HTTP. 更多 …
def
append
(httpPart)
def
boundary
()
def
setBoundary
(boundary)
def
setContentType
(contentType)
QHttpMultiPartresembles a MIME multipart message, as described in RFC 2046, which is to be sent over HTTP. A multipart message consists of an arbitrary number of body parts (seeQHttpPart), which are separated by a unique boundary. The boundary of theQHttpMultiPartis constructed with the string “boundary_.oOo._” followed by random characters, and provides enough uniqueness to make sure it does not occur inside the parts itself. If desired, the boundary can still be set viasetBoundary().As an example, consider the following code snippet, which constructs a multipart message containing a text part followed by an image part:
QHttpMultiPart *multiPart = new QHttpMultiPart(QHttpMultiPart::FormDataType); QHttpPart textPart; textPart.setHeader(QNetworkRequest::ContentDispositionHeader, QVariant("form-data; name=\"text\"")); textPart.setBody("my text"); QHttpPart imagePart; imagePart.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("image/jpeg")); imagePart.setHeader(QNetworkRequest::ContentDispositionHeader, QVariant("form-data; name=\"image\"")); QFile *file = new QFile("image.jpg"); file->open(QIODevice::ReadOnly); imagePart.setBodyDevice(file); file->setParent(multiPart); // we cannot delete the file now, so delete it with the multiPart multiPart->append(textPart); multiPart->append(imagePart); QUrl url("http://my.server.tld"); QNetworkRequest request(url); QNetworkAccessManager manager; QNetworkReply *reply = manager.post(request, multiPart); multiPart->setParent(reply); // delete the multiPart with the reply // here connect signals etc.
QHttpMultiPart
(
contentType
[
,
parent=None
]
)
¶
QHttpMultiPart([parent=None])
- param parent
QObject- param contentType
ContentType
构造
QHttpMultiPart
with content type
contentType
and sets parent as the parent object.
另请参阅
ContentType
构造
QHttpMultiPart
with content type
MixedType
and sets
parent
作为父级对象。
另请参阅
ContentType
PySide2.QtNetwork.QHttpMultiPart.
ContentType
¶
List of known content types for a multipart subtype as described in RFC 2046 and others.
|
常量 |
描述 |
|---|---|
|
QHttpMultiPart.MixedType |
corresponds to the “multipart/mixed” subtype, meaning the body parts are independent of each other, as described in RFC 2046. |
|
QHttpMultiPart.RelatedType |
corresponds to the “multipart/related” subtype, meaning the body parts are related to each other, as described in RFC 2387. |
|
QHttpMultiPart.FormDataType |
corresponds to the “multipart/form-data” subtype, meaning the body parts contain form elements, as described in RFC 2388. |
|
QHttpMultiPart.AlternativeType |
corresponds to the “multipart/alternative” subtype, meaning the body parts are alternative representations of the same information, as described in RFC 2046. |
另请参阅
PySide2.QtNetwork.QHttpMultiPart.
append
(
httpPart
)
¶
httpPart
–
QHttpPart
追加
httpPart
to this multipart.
PySide2.QtNetwork.QHttpMultiPart.
boundary
(
)
¶
QByteArray
returns the boundary.
另请参阅
PySide2.QtNetwork.QHttpMultiPart.
setBoundary
(
boundary
)
¶
boundary
–
QByteArray
Sets the boundary to
boundary
.
Usually, you do not need to generate a boundary yourself; upon construction the boundary is initiated with the string “boundary_.oOo._” followed by random characters, and provides enough uniqueness to make sure it does not occur inside the parts itself.
另请参阅
PySide2.QtNetwork.QHttpMultiPart.
setContentType
(
contentType
)
¶
contentType
–
ContentType
Sets the content type to
contentType
. The content type will be used in the HTTP header section when sending the multipart message via
post()
. In case you want to use a multipart subtype not contained in
ContentType
, you can add the “Content-Type” header field to the
QNetworkRequest
by hand, and then use this request together with the multipart message for posting.
另请参阅
ContentType
post()