当前位置: 首页 > 知识库问答 >
问题:

nativeScript-nativescript-背景-超文本传输协议不工作

葛学民
2023-03-14

我试图发布到一个webapi,我已经从一个用NativeScript制作的移动应用程序的C#。

我正在使用nativescript图像选择器nativescript后台http。但是错误事件总是在触发。

这是我的代码:我的两个导入:

import * as imagepicker from "nativescript-imagepicker";
import * as bghttp from "nativescript-background-http";

这是我获取图像uri的方式:

SelectImage(): void {
        let context = imagepicker.create({
            mode: "single"
        });

        context.authorize()
               .then(() => { return context.present() })
               .then((selection) => {
                   selection.forEach((selected) => {
                        this.signupModel.CIPath = selected.fileUri;
                   })
               }).catch((e) => {
                   console.log(e);
               });
    }

这就是我试图发布数据的方式:

SignUp(): void {
        let session = bghttp.session("image-upload");

        let request = {
            url: "http://localhost:53286/api/Home/Signup",
            method: "POST",
            headers: {
                "Content-Type": "application/octet-stream",
                "File-Name": this.signupModel.CIPath
            },
            description: "{ 'uploading': 'Uploading file...' }"
        };

        let task: bghttp.Task;

        let params = [{
            name: "ImageCI", mimeType: "image/jpeg", filename: this.signupModel.CIPath
        }, {
            name: "Rut", value: this.signupModel.Rut
        }, {
            name: "Name", value: this.signupModel.Name
        }, {
            name: "Address", value: this.signupModel.Address
        }, {
            name: "Commune", value: this.signupModel.Commune
        }, {
            name: "PhoneNumber", value: this.signupModel.PhoneNumber
        }, {
            name: "Email", value: this.signupModel.Email
        }, {
            name: "Password", value: this.signupModel.Password
        }];

        task = session.multipartUpload(params, request);

        task.on("error", (response: any) => {
            console.log(JSON.stringify(response));
            alert({title: "Sistema 3 Esferas", message:"Error subiendo imagen...", okButtonText: "Cerrar"});
        });

        task.on("responded", (response: any) => {
            console.log(JSON.stringify(response));
        });
    }

我能做错什么?提前感谢。:)

共有1个答案

竺焕
2023-03-14

谢谢你的评论,尼克。

是的,成功了。我只是不得不改变这一行:

url: "http://localhost:53286/api/Home/Signup"

到:

url: "http://10.0.2.2:53286/api/Home/Signup"

这解决了问题。:)

 类似资料:
  • 我的反应应用程序是在localhost:3000和节点服务器上运行localhost:5000。当我试图连接到快速API时,路由将localhost:3000/auth/google而不是localhost:5000/auth/google 用户操作。js } setupProxy.js 节点server.js 编辑:反应包。json 我是新手,因此我不知道代理究竟是如何工作的。

  • 我正在使用GWT和Spring controller来管理http流量。有些请求可能需要很长时间,但我希望在超过给定时间时终止请求。 我如何配置超时Spring。我也使用Apache Tomcat 7.0。我试图在tomcat上inrease最大线程,但有一段时间tomcat工作缓慢,因为请求线程不会死。

  • 嗨,我一直在尝试代理解决方案,以避免在myapp中的cors问题,但它似乎不起作用,我重启了我的机器这么多次,这没有什么区别。基本上,myapp使用ftchApi调用另一个域(localhost:8080),这是一个SpringBoot应用程序终结点。我添加了package.json"代理":"http://localhost:8080/",但api仍然返回与localhost:3000调用,我尝

  • 我正在使用oauth签名生成我的oauth签名,以便与woocommerce api连接。我遵循了woocommerce rest api文档中所述的所有步骤: 所需的参数是:oauth_consumer_密钥、oauth_时间戳、oauth_nonce、oauth_签名和oauth_签名方法。oauth_版本不是必需的,应该省略。OAuth nonce可以是消费者密钥唯一的任意随机生成的32个字

  • 我只是有一个关于服务中http请求的结构和处理响应的问题。我正在使用Angular2。alpha46 Typescript(刚刚开始测试-我喜欢它…Ps…。感谢所有一直致力于它并通过github作出贡献的人) 因此,采取以下措施: 登录表单。组成部分ts 从这个组件中,我导入了我的userService,它将容纳我的超文本传输协议请求,以登录用户。 使用者服务ts 我想做的是能够处理http请求之

  • 我的LogCat: 签名密钥(sw)为https://api.dropbox.com/1/shares/dropbox/a.jpg?oauth_consumer_key=2f2y1dyuqhp58ek 我对http没有太多经验。。 因为httpPost=新的httpPost(sw);工作正常,这是否意味着基本字符串签名正确? 还是我错过了什么?