當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript Request.detectContentTypeFromBody方法代碼示例

本文整理匯總了TypeScript中@angular/http.Request.detectContentTypeFromBody方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript Request.detectContentTypeFromBody方法的具體用法?TypeScript Request.detectContentTypeFromBody怎麽用?TypeScript Request.detectContentTypeFromBody使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在@angular/http.Request的用法示例。


在下文中一共展示了Request.detectContentTypeFromBody方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: ResponseOptions

            (responseObserver: Observer<Response>) => {
                const headers = req.headers.toJSON();
                Object.keys(headers).map(function(key) {
                    if (headers[key].length > 1) {
                        throw `Header ${key} contains more than one value`;
                    }
                    headers[key] = headers[key][0];
                });

                let body;

                // 1 stands for ContentType.JSON. Angular doesn't export ContentType
                if (req.detectContentTypeFromBody() === 1) {
                    body = req.json();
                } else {
                    body = this.getBodyParams(req.getBody());
                }

                const requestMethod = this.detectRequestMethod(req);

                /**
                 * Request contains either encoded either decoded URL depended on the way
                 * parameters are passed to Http component. Even though XMLHttpRequest automatically
                 * converts unencoded URL, NativeHTTP requires it to be always encoded.
                 */
                const url = encodeURI(decodeURI(req.url)).replace('%252F', '%2F');

                nativeHttp.setDataSerializer(
                    this.detectDataSerializerType(req),
                );

                nativeHttp[requestMethod](url, body, headers)
                    .then((response: HTTPResponse) => {
                        this.fireResponse(
                            responseObserver,
                            new ResponseOptions({
                                body: response.data,
                                status: response.status,
                                headers: new Headers(response.headers),
                            }),
                            baseResponseOptions,
                        );
                    })
                    .catch((error: HTTPError) => {
                        this.fireResponse(
                            responseObserver,
                            new ResponseOptions({
                                body: error.error,
                                status: error.status || 599, // https://httpstatuses.com/599
                                headers: new Headers(error.headers),
                            }),
                            baseResponseOptions,
                        );
                    });
            },
開發者ID:achubutkin,項目名稱:ionic-native-http-connection-backend,代碼行數:55,代碼來源:native-http-backend.ts

示例2: detectDataSerializerType

    private detectDataSerializerType(req: Request): DataSerializerType {
        if (
            req.method === RequestMethod.Post ||
            req.method === RequestMethod.Put
        ) {
            // 1 stands for ContentType.JSON. Angular doesn't export ContentType
            if (req.detectContentTypeFromBody() === 1) {
                return 'json';
            }
        }

        return 'urlencoded';
    }
開發者ID:achubutkin,項目名稱:ionic-native-http-connection-backend,代碼行數:13,代碼來源:native-http-backend.ts


注:本文中的@angular/http.Request.detectContentTypeFromBody方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。