title: React Native Post Error 'Cannot Load Empty URL'
body: <p>Trying to make a POST request in React using code below.  To maintain privacy I've deleted the actual parameters and inserted fake ones for the url, accesskey and varArgs variables.  When I try to kick off the request I am getting - 'Error: Cannot load an empty url'. My url variable is a valid string and the post request works fine from curl.  Can anyone see what I am doing wrong?</p>
  
  <pre><code>import React, { Component } from 'react';
  import {
    AppRegistry,
    StyleSheet,
    Text,
    View,
    TouchableHighlight,
    Picker
  } from 'react-native';
  
  var vsprintf = require('sprintf-js').vsprintf
  
  class plantMetrics extends Component {
    constructor(props){
      super(props)
  
      const url = 'http://myurl.com'
      const accessKey = 'myaccesskey'
      const varArgs = '{"arg1":"val1"}'
  
      this.state = {
        catalogMeta: 'shit',
        workspace: '',
        measure: '',
        bu: '',
        country: '',
        plant: '',
        region: ''
      }
    }
      getCatalogInfo(){
      fetch(this.url, {
        method: "POST",
        headers: { 
          'Content-Type': 'application/json',  
          'Authorization': this.accessKey
        },
        body: this.varArgs
      })
      .then((response) =&gt; response.json())
      .then((responseJson) =&gt; {
        this.setState({catalogMeta: JSON.stringify(responseJson.body)})
      })
      .catch((error) =&gt; {      
        this.setState({catalogMeta: 'error: ' + error})
      })
    }
  
    render() {
      return (
        &lt;View&gt;
          &lt;Text&gt;{"\n"}&lt;/Text&gt;
          &lt;Text&gt;{this.state.catalogMeta}&lt;/Text&gt;
           &lt;TouchableHighlight onPress={this.getCatalogInfo.bind(this)}&gt;
              &lt;Text&gt;Fetch&lt;/Text&gt;
          &lt;/TouchableHighlight&gt;
        &lt;/View&gt;
      );
    }
  </code></pre>